From 400f9b9bc9dd316222e75f636fd7dd6717d46293 Mon Sep 17 00:00:00 2001 From: Azure SDK for Python bot Date: Wed, 1 May 2019 16:22:29 -0700 Subject: [PATCH] [AutoPR] apimanagement/resource-manager (#3106) * Generated from 272debceab4e4b56bffbbf0cdb5951f16b86bfc1 (#3105) Bug fix on readonly property * Generated from 87a228ba1920d84a47c4ecd7c8fc0662843271d0 (#3112) Bug fix for readonly property * Generated from 731500203118757481b0dda9a873a83704df82f9 (#3135) Make 2018-01-01 as default for all clients * [AutoPR apimanagement/resource-manager] add openid connect in authentication settings (#3612) * Generated from 0d3fa76ca7abc30f7d80506e5183c45c66aef6d3 add openid connect in authentication settings * Packaging update of azure-mgmt-apimanagement * [AutoPR apimanagement/resource-manager] Remove readonly attribute from identities collection in users (#3775) * Generated from cbd8b32037c8d911d9c4024dd3accb02bfad8e93 Remove readonly attribute from identities collection in users * Packaging update of azure-mgmt-apimanagement * [AutoPR apimanagement/resource-manager] Added missing PATCH operation to Api Issue resource (#3773) * Generated from 73c3ebb5e203fc53ce5cdb52d31170729775848f Added missing PATCH operation to Api Issue resource * Packaging update of azure-mgmt-apimanagement * Generated from dcb5eb7ef83a50275a7d92747baaad3a850286a4 Added missing PATCH operation to Api Issue resource * Generated from ccc27d4c2f7026867aa2bcf3e67b6359c3ec0f11 Added missing PATCH operation to Api Issue resource * [AutoPR apimanagement/resource-manager] /identity endpoint added (#3795) * Generated from 8363d68686accd9a2c5c1727ebab556ca7529cb3 /identity endpoint added * Generated from 8363d68686accd9a2c5c1727ebab556ca7529cb3 /identity endpoint added * Generated from 5fd09d9c190804fe78ab73bd227102f9c136fada (#3834) typo: Fix apimanagement/resource-manager/Microsoft.ApiManagement/apimbackends.json - parition -> partition - Reconect -> Reconnect * Generated from 52e8c136547f090c4c3f45185587d7bf7f9133bb (#3911) Added example for template params * [AutoPR apimanagement/resource-manager] API Management service SKU API documentation (#3797) * Generated from e8183a03edd1178ade3f773ba48e88a45609d705 added example * Generated from 4fb410f50024ecc29bfb3e8ca857bf7c31a15e30 more PR comment fixes * Generated from b2942f357046a206ce8895f555a1e9f4071402a9 correct casing * Update HISTORY.rst * Update sdk_packaging.toml * Packaging update of azure-mgmt-apimanagement * [AutoPR apimanagement/resource-manager] [Hub Generated] Review request for Microsoft.ApiManagement to add version stable/2019-01-01 (#4795) * Generated from 20f3f451957b3e3b1029eb3a5cdfe0aed8fb553d 2019-01-01 version initial changes * Generated from 58b97be57b056b9532da3cfa3cd854d13332a50a 2019-01-01 version initial changes * Packaging update of azure-mgmt-apimanagement * [AutoPR apimanagement/resource-manager] [Hub Generated] Review request for Microsoft.ApiManagement to add version stable/2019-01-01 (#4826) * Generated from 6d9246da16d91e7f3bbee8052551e189e9c24961 Rename and fixes for .Net client * Generated from ccfe40bf845ae0078e1369d5110bbf97aa85d948 Fix for Api Export on 2019-01-01 * Generated from 6f97be08923dc01352f2285425ec2ca46a83ea47 Fix for Api Export on 2019-01-01 * Generated from 18c5892f6603d16b17e2a78868b90871fc5972b6 Fix GET User Token Contract * Generated from 63ec8584379668d420e906190b9710a48e9f7159 Fix definition for Deploy, Save, AccessInformationUpdate * Generated from ab0feb1a7675accf399edbf5a4c378d844dcb8fa fix edits * Generated from 71e167693019e8e657c456995331e3d7b5432a8f update example for deployment * [AutoPR apimanagement/resource-manager] [Hub Generated] Review request for Microsoft.ApiManagement to add version stable/2019-01-01 (#4933) * Generated from 18cb1ce1a5c7d084750fa6769b2a0e687d5fb1a4 Policy Format * Generated from 59ae1de9eccce7e80bf5b56faa5445a382a1dc93 upper case XML * Generated from 5964a9567e075efc8279833610ebd33a0b8e0944 upper case XML * Generated from 7825a73e04058cc0a46f8ad579111e5febaa9750 (#4959) revert not support formats * Generated from c930d158febafb829d52d7edb32b1c65960af21e (#5010) Fix default value of capacity. * [AutoPR apimanagement/resource-manager] [Hub Generated] Review request for Microsoft.ApiManagement to add version stable/2019-01-01 (#5025) * Generated from 6e647cf5693984e7bb8c0c70ee673c58ae2773c9 add example for schemas * Generated from 7b796fcaffbd3dce76e9961c8fcb270d61fe0387 add example for schemas * Generated from fc2b834a69b907c626e186bf0b4e5629c69eaf83 add example for schemas * Update HISTORY.rst --- azure-mgmt-apimanagement/HISTORY.rst | 9 + azure-mgmt-apimanagement/MANIFEST.in | 5 + azure-mgmt-apimanagement/README.rst | 33 + azure-mgmt-apimanagement/azure/__init__.py | 1 + .../azure/mgmt/__init__.py | 1 + .../azure/mgmt/apimanagement/__init__.py | 18 + .../apimanagement/api_management_client.py | 385 ++++ .../mgmt/apimanagement/models/__init__.py | 623 +++++++ .../models/access_information_contract.py | 40 + .../models/access_information_contract_py3.py | 40 + .../access_information_update_parameters.py | 28 + ...ccess_information_update_parameters_py3.py | 28 + .../models/additional_location.py | 71 + .../models/additional_location_py3.py | 71 + .../mgmt/apimanagement/models/api_contract.py | 139 ++ .../models/api_contract_paged.py | 27 + .../models/api_contract_properties.py | 115 ++ .../models/api_contract_properties_py3.py | 115 ++ .../apimanagement/models/api_contract_py3.py | 139 ++ .../models/api_create_or_update_parameter.py | 151 ++ .../api_create_or_update_parameter_py3.py | 151 ++ ...eate_or_update_properties_wsdl_selector.py | 32 + ..._or_update_properties_wsdl_selector_py3.py | 32 + .../models/api_entity_base_contract.py | 92 + .../models/api_entity_base_contract_py3.py | 92 + .../apimanagement/models/api_export_result.py | 39 + .../models/api_export_result_py3.py | 39 + .../models/api_export_result_value.py | 29 + .../models/api_export_result_value_py3.py | 29 + .../models/api_management_client_enums.py | 294 +++ ..._apply_network_configuration_parameters.py | 30 + ...ly_network_configuration_parameters_py3.py | 30 + ...ement_service_backup_restore_parameters.py | 53 + ...t_service_backup_restore_parameters_py3.py | 53 + .../api_management_service_base_properties.py | 157 ++ ..._management_service_base_properties_py3.py | 157 ++ ...vice_check_name_availability_parameters.py | 34 + ..._check_name_availability_parameters_py3.py | 34 + ...management_service_get_sso_token_result.py | 29 + ...gement_service_get_sso_token_result_py3.py | 29 + .../models/api_management_service_identity.py | 49 + .../api_management_service_identity_py3.py | 49 + ...gement_service_name_availability_result.py | 54 + ...nt_service_name_availability_result_py3.py | 54 + .../models/api_management_service_resource.py | 206 +++ .../api_management_service_resource_paged.py | 27 + .../api_management_service_resource_py3.py | 206 +++ .../api_management_service_sku_properties.py | 40 + ...i_management_service_sku_properties_py3.py | 40 + ...pi_management_service_update_parameters.py | 198 ++ ...anagement_service_update_parameters_py3.py | 198 ++ .../models/api_release_contract.py | 62 + .../models/api_release_contract_paged.py | 27 + .../models/api_release_contract_py3.py | 62 + .../models/api_revision_contract.py | 74 + .../models/api_revision_contract_paged.py | 27 + .../models/api_revision_contract_py3.py | 74 + .../models/api_revision_info_contract.py | 48 + .../models/api_revision_info_contract_py3.py | 48 + .../api_tag_resource_contract_properties.py | 108 ++ ...pi_tag_resource_contract_properties_py3.py | 108 ++ .../models/api_update_contract.py | 116 ++ .../models/api_update_contract_py3.py | 116 ++ .../models/api_version_set_contract.py | 73 + .../api_version_set_contract_details.py | 54 + .../api_version_set_contract_details_py3.py | 54 + .../models/api_version_set_contract_paged.py | 27 + .../models/api_version_set_contract_py3.py | 73 + .../models/api_version_set_entity_base.py | 43 + .../models/api_version_set_entity_base_py3.py | 43 + .../api_version_set_update_parameters.py | 55 + .../api_version_set_update_parameters_py3.py | 55 + .../apimanagement/models/apim_resource.py | 50 + .../apimanagement/models/apim_resource_py3.py | 50 + .../authentication_settings_contract.py | 41 + .../authentication_settings_contract_py3.py | 41 + .../models/authorization_server_contract.py | 142 ++ ...ization_server_contract_base_properties.py | 92 + ...ion_server_contract_base_properties_py3.py | 92 + .../authorization_server_contract_paged.py | 27 + .../authorization_server_contract_py3.py | 142 ++ .../authorization_server_update_contract.py | 136 ++ ...uthorization_server_update_contract_py3.py | 136 ++ ...ackend_authorization_header_credentials.py | 39 + ...nd_authorization_header_credentials_py3.py | 39 + .../models/backend_base_parameters.py | 61 + .../models/backend_base_parameters_py3.py | 61 + .../apimanagement/models/backend_contract.py | 89 + .../models/backend_contract_paged.py | 27 + .../models/backend_contract_py3.py | 89 + .../models/backend_credentials_contract.py | 45 + .../backend_credentials_contract_py3.py | 45 + .../models/backend_properties.py | 29 + .../models/backend_properties_py3.py | 29 + .../models/backend_proxy_contract.py | 44 + .../models/backend_proxy_contract_py3.py | 44 + .../models/backend_reconnect_contract.py | 47 + .../models/backend_reconnect_contract_py3.py | 47 + ...ckend_service_fabric_cluster_properties.py | 55 + ...d_service_fabric_cluster_properties_py3.py | 55 + .../models/backend_tls_properties.py | 36 + .../models/backend_tls_properties_py3.py | 36 + .../models/backend_update_parameters.py | 71 + .../models/backend_update_parameters_py3.py | 71 + .../models/body_diagnostic_settings.py | 32 + .../models/body_diagnostic_settings_py3.py | 32 + .../apimanagement/models/cache_contract.py | 60 + .../models/cache_contract_paged.py | 27 + .../models/cache_contract_py3.py | 60 + .../models/cache_update_parameters.py | 43 + .../models/cache_update_parameters_py3.py | 43 + .../models/certificate_configuration.py | 50 + .../models/certificate_configuration_py3.py | 50 + .../models/certificate_contract.py | 61 + .../models/certificate_contract_paged.py | 27 + .../models/certificate_contract_py3.py | 61 + ...certificate_create_or_update_parameters.py | 40 + ...ificate_create_or_update_parameters_py3.py | 40 + .../models/certificate_information.py | 46 + .../models/certificate_information_py3.py | 46 + .../models/connectivity_status_contract.py | 65 + .../connectivity_status_contract_py3.py | 65 + .../models/deploy_configuration_parameters.py | 40 + .../deploy_configuration_parameters_py3.py | 40 + .../models/diagnostic_contract.py | 75 + .../models/diagnostic_contract_paged.py | 27 + .../models/diagnostic_contract_py3.py | 75 + .../models/email_template_contract.py | 74 + .../models/email_template_contract_paged.py | 27 + .../models/email_template_contract_py3.py | 74 + ...template_parameters_contract_properties.py | 42 + ...late_parameters_contract_properties_py3.py | 42 + .../email_template_update_parameters.py | 50 + .../email_template_update_parameters_py3.py | 50 + .../models/error_field_contract.py | 36 + .../models/error_field_contract_py3.py | 36 + .../apimanagement/models/error_response.py | 51 + .../models/error_response_body.py | 38 + .../models/error_response_body_py3.py | 38 + .../models/error_response_py3.py | 51 + .../models/generate_sso_url_result.py | 28 + .../models/generate_sso_url_result_py3.py | 28 + .../apimanagement/models/group_contract.py | 73 + .../models/group_contract_paged.py | 27 + .../models/group_contract_properties.py | 60 + .../models/group_contract_properties_py3.py | 60 + .../models/group_contract_py3.py | 73 + .../models/group_create_parameters.py | 50 + .../models/group_create_parameters_py3.py | 50 + .../models/group_update_parameters.py | 48 + .../models/group_update_parameters_py3.py | 48 + .../models/hostname_configuration.py | 76 + .../models/hostname_configuration_py3.py | 76 + .../models/http_message_diagnostic.py | 32 + .../models/http_message_diagnostic_py3.py | 32 + .../identity_provider_base_parameters.py | 67 + .../identity_provider_base_parameters_py3.py | 67 + .../models/identity_provider_contract.py | 101 ++ .../identity_provider_contract_paged.py | 27 + .../models/identity_provider_contract_py3.py | 101 ++ .../identity_provider_update_parameters.py | 82 + ...identity_provider_update_parameters_py3.py | 82 + .../models/issue_attachment_contract.py | 61 + .../models/issue_attachment_contract_paged.py | 27 + .../models/issue_attachment_contract_py3.py | 61 + .../models/issue_comment_contract.py | 59 + .../models/issue_comment_contract_paged.py | 27 + .../models/issue_comment_contract_py3.py | 59 + .../apimanagement/models/issue_contract.py | 74 + .../models/issue_contract_base_properties.py | 38 + .../issue_contract_base_properties_py3.py | 38 + .../models/issue_contract_paged.py | 27 + .../models/issue_contract_py3.py | 74 + .../models/issue_update_contract.py | 50 + .../models/issue_update_contract_py3.py | 50 + .../apimanagement/models/logger_contract.py | 72 + .../models/logger_contract_paged.py | 27 + .../models/logger_contract_py3.py | 72 + .../models/logger_update_contract.py | 42 + .../models/logger_update_contract_py3.py | 42 + .../models/network_status_contract.py | 41 + .../network_status_contract_by_location.py | 37 + ...network_status_contract_by_location_py3.py | 37 + .../models/network_status_contract_py3.py | 41 + .../models/notification_contract.py | 58 + .../models/notification_contract_paged.py | 27 + .../models/notification_contract_py3.py | 58 + ...oauth2_authentication_settings_contract.py | 32 + ...h2_authentication_settings_contract_py3.py | 32 + ...pen_id_authentication_settings_contract.py | 33 + ...id_authentication_settings_contract_py3.py | 33 + .../openid_connect_provider_contract.py | 69 + .../openid_connect_provider_contract_paged.py | 27 + .../openid_connect_provider_contract_py3.py | 69 + ...openid_connect_provider_update_contract.py | 50 + ...id_connect_provider_update_contract_py3.py | 50 + .../mgmt/apimanagement/models/operation.py | 40 + .../models/operation_contract.py | 85 + .../models/operation_contract_paged.py | 27 + .../models/operation_contract_py3.py | 85 + .../apimanagement/models/operation_display.py | 41 + .../models/operation_display_py3.py | 41 + .../models/operation_entity_base_contract.py | 50 + .../operation_entity_base_contract_py3.py | 50 + .../apimanagement/models/operation_paged.py | 27 + .../apimanagement/models/operation_py3.py | 40 + .../models/operation_result_contract.py | 68 + .../models/operation_result_contract_py3.py | 68 + .../operation_result_log_item_contract.py | 36 + .../operation_result_log_item_contract_py3.py | 36 + ...ration_tag_resource_contract_properties.py | 72 + ...on_tag_resource_contract_properties_py3.py | 72 + .../models/operation_update_contract.py | 67 + .../models/operation_update_contract_py3.py | 67 + .../models/parameter_contract.py | 55 + .../models/parameter_contract_py3.py | 55 + .../models/pipeline_diagnostic_settings.py | 32 + .../pipeline_diagnostic_settings_py3.py | 32 + .../apimanagement/models/policy_collection.py | 32 + .../models/policy_collection_py3.py | 32 + .../apimanagement/models/policy_contract.py | 54 + .../models/policy_contract_py3.py | 54 + .../models/policy_snippet_contract.py | 50 + .../models/policy_snippet_contract_py3.py | 50 + .../models/policy_snippets_collection.py | 28 + .../models/policy_snippets_collection_py3.py | 28 + .../models/portal_delegation_settings.py | 61 + .../models/portal_delegation_settings_py3.py | 61 + .../models/portal_signin_settings.py | 46 + .../models/portal_signin_settings_py3.py | 46 + .../models/portal_signup_settings.py | 51 + .../models/portal_signup_settings_py3.py | 51 + .../apimanagement/models/product_contract.py | 93 + .../models/product_contract_paged.py | 27 + .../models/product_contract_py3.py | 93 + .../models/product_entity_base_parameters.py | 71 + .../product_entity_base_parameters_py3.py | 71 + ...roduct_tag_resource_contract_properties.py | 76 + ...ct_tag_resource_contract_properties_py3.py | 76 + .../models/product_update_parameters.py | 76 + .../models/product_update_parameters_py3.py | 76 + .../apimanagement/models/property_contract.py | 67 + .../models/property_contract_paged.py | 27 + .../models/property_contract_py3.py | 67 + .../models/property_entity_base_parameters.py | 38 + .../property_entity_base_parameters_py3.py | 38 + .../models/property_update_parameters.py | 50 + .../models/property_update_parameters_py3.py | 50 + .../models/quota_counter_collection.py | 36 + .../models/quota_counter_collection_py3.py | 36 + .../models/quota_counter_contract.py | 60 + .../models/quota_counter_contract_py3.py | 60 + .../models/quota_counter_value_contract.py | 32 + ...quota_counter_value_contract_properties.py | 32 + ...a_counter_value_contract_properties_py3.py | 32 + .../quota_counter_value_contract_py3.py | 32 + .../models/recipient_email_collection.py | 32 + .../models/recipient_email_collection_py3.py | 32 + .../models/recipient_email_contract.py | 46 + .../models/recipient_email_contract_py3.py | 46 + .../models/recipient_user_collection.py | 32 + .../models/recipient_user_collection_py3.py | 32 + .../models/recipient_user_contract.py | 46 + .../models/recipient_user_contract_py3.py | 46 + .../models/recipients_contract_properties.py | 32 + .../recipients_contract_properties_py3.py | 32 + .../apimanagement/models/region_contract.py | 43 + .../models/region_contract_paged.py | 27 + .../models/region_contract_py3.py | 43 + ...stration_delegation_settings_properties.py | 28 + ...tion_delegation_settings_properties_py3.py | 28 + .../models/report_record_contract.py | 153 ++ .../models/report_record_contract_paged.py | 27 + .../models/report_record_contract_py3.py | 153 ++ .../models/representation_contract.py | 58 + .../models/representation_contract_py3.py | 58 + .../apimanagement/models/request_contract.py | 42 + .../models/request_contract_py3.py | 42 + .../models/request_report_record_contract.py | 114 ++ .../request_report_record_contract_paged.py | 27 + .../request_report_record_contract_py3.py | 114 ++ .../mgmt/apimanagement/models/resource.py | 45 + .../mgmt/apimanagement/models/resource_py3.py | 45 + .../mgmt/apimanagement/models/resource_sku.py | 29 + .../models/resource_sku_capacity.py | 52 + .../models/resource_sku_capacity_py3.py | 52 + .../apimanagement/models/resource_sku_py3.py | 29 + .../models/resource_sku_result.py | 45 + .../models/resource_sku_result_paged.py | 27 + .../models/resource_sku_result_py3.py | 45 + .../apimanagement/models/response_contract.py | 47 + .../models/response_contract_py3.py | 47 + .../apimanagement/models/sampling_settings.py | 36 + .../models/sampling_settings_py3.py | 36 + .../models/save_configuration_parameter.py | 41 + .../save_configuration_parameter_py3.py | 41 + .../apimanagement/models/schema_contract.py | 59 + .../models/schema_contract_paged.py | 27 + .../models/schema_contract_py3.py | 59 + .../schema_create_or_update_contract.py | 60 + .../schema_create_or_update_contract_py3.py | 60 + .../models/subscription_contract.py | 131 ++ .../models/subscription_contract_paged.py | 27 + .../models/subscription_contract_py3.py | 131 ++ .../models/subscription_create_parameters.py | 74 + .../subscription_create_parameters_py3.py | 74 + ...bscription_key_parameter_names_contract.py | 32 + ...iption_key_parameter_names_contract_py3.py | 32 + .../models/subscription_update_parameters.py | 78 + .../subscription_update_parameters_py3.py | 78 + ...riptions_delegation_settings_properties.py | 28 + ...ions_delegation_settings_properties_py3.py | 28 + .../mgmt/apimanagement/models/tag_contract.py | 49 + .../models/tag_contract_paged.py | 27 + .../apimanagement/models/tag_contract_py3.py | 49 + .../models/tag_create_update_parameters.py | 34 + .../tag_create_update_parameters_py3.py | 34 + .../models/tag_description_contract.py | 62 + .../models/tag_description_contract_paged.py | 27 + .../models/tag_description_contract_py3.py | 62 + .../tag_description_create_parameters.py | 42 + .../tag_description_create_parameters_py3.py | 42 + .../models/tag_resource_contract.py | 50 + .../models/tag_resource_contract_paged.py | 27 + .../models/tag_resource_contract_py3.py | 50 + .../tag_tag_resource_contract_properties.py | 36 + ...ag_tag_resource_contract_properties_py3.py | 36 + ...enant_configuration_sync_state_contract.py | 59 + ...t_configuration_sync_state_contract_py3.py | 59 + .../models/terms_of_service_properties.py | 36 + .../models/terms_of_service_properties_py3.py | 36 + .../models/token_body_parameter_contract.py | 39 + .../token_body_parameter_contract_py3.py | 39 + .../apimanagement/models/user_contract.py | 83 + .../models/user_contract_paged.py | 27 + .../apimanagement/models/user_contract_py3.py | 83 + .../models/user_create_parameters.py | 73 + .../models/user_create_parameters_py3.py | 73 + .../models/user_entity_base_parameters.py | 41 + .../models/user_entity_base_parameters_py3.py | 41 + .../models/user_identity_contract.py | 32 + .../models/user_identity_contract_paged.py | 27 + .../models/user_identity_contract_py3.py | 32 + .../models/user_token_parameters.py | 43 + .../models/user_token_parameters_py3.py | 43 + .../apimanagement/models/user_token_result.py | 28 + .../models/user_token_result_py3.py | 28 + .../models/user_update_parameters.py | 64 + .../models/user_update_parameters_py3.py | 64 + .../models/virtual_network_configuration.py | 48 + .../virtual_network_configuration_py3.py | 48 + .../models/x509_certificate_name.py | 33 + .../models/x509_certificate_name_py3.py | 33 + .../mgmt/apimanagement/operations/__init__.py | 136 ++ .../operations/api_diagnostic_operations.py | 492 +++++ .../operations/api_export_operations.py | 112 ++ .../api_issue_attachment_operations.py | 443 +++++ .../api_issue_comment_operations.py | 443 +++++ .../operations/api_issue_operations.py | 500 ++++++ .../operations/api_management_operations.py | 99 + .../api_management_service_operations.py | 989 ++++++++++ .../api_management_service_skus_operations.py | 110 ++ .../operations/api_operation_operations.py | 508 ++++++ .../api_operation_policy_operations.py | 422 +++++ .../operations/api_operations.py | 632 +++++++ .../operations/api_policy_operations.py | 402 +++++ .../operations/api_product_operations.py | 126 ++ .../operations/api_release_operations.py | 501 ++++++ .../operations/api_revision_operations.py | 126 ++ .../operations/api_schema_operations.py | 442 +++++ .../api_tag_description_operations.py | 427 +++++ .../operations/api_version_set_operations.py | 467 +++++ .../authorization_server_operations.py | 468 +++++ .../operations/backend_operations.py | 542 ++++++ .../operations/cache_operations.py | 461 +++++ .../operations/certificate_operations.py | 410 +++++ .../delegation_settings_operations.py | 295 +++ .../operations/diagnostic_operations.py | 466 +++++ .../operations/email_template_operations.py | 516 ++++++ .../operations/group_operations.py | 471 +++++ .../operations/group_user_operations.py | 327 ++++ .../identity_provider_operations.py | 464 +++++ .../operations/issue_operations.py | 198 ++ .../operations/logger_operations.py | 474 +++++ .../operations/network_status_operations.py | 169 ++ .../operations/notification_operations.py | 259 +++ ...notification_recipient_email_operations.py | 314 ++++ .../notification_recipient_user_operations.py | 318 ++++ .../open_id_connect_provider_operations.py | 467 +++++ .../operations/operation_operations.py | 140 ++ .../operations/policy_operations.py | 378 ++++ .../operations/policy_snippet_operations.py | 104 ++ .../operations/product_api_operations.py | 327 ++++ .../operations/product_group_operations.py | 321 ++++ .../operations/product_operations.py | 580 ++++++ .../operations/product_policy_operations.py | 396 ++++ .../product_subscriptions_operations.py | 136 ++ .../operations/property_operations.py | 463 +++++ .../quota_by_counter_keys_operations.py | 180 ++ .../quota_by_period_keys_operations.py | 184 ++ .../operations/region_operations.py | 106 ++ .../operations/reports_operations.py | 824 +++++++++ .../operations/sign_in_settings_operations.py | 297 +++ .../operations/sign_up_settings_operations.py | 303 ++++ .../operations/subscription_operations.py | 607 +++++++ .../operations/tag_operations.py | 1586 +++++++++++++++++ .../operations/tag_resource_operations.py | 138 ++ .../tenant_access_git_operations.py | 212 +++ .../operations/tenant_access_operations.py | 334 ++++ .../tenant_configuration_operations.py | 435 +++++ .../user_confirmation_password_operations.py | 93 + .../operations/user_group_operations.py | 129 ++ .../operations/user_identities_operations.py | 110 ++ .../operations/user_operations.py | 634 +++++++ .../user_subscription_operations.py | 135 ++ .../azure/mgmt/apimanagement/version.py | 13 + azure-mgmt-apimanagement/sdk_packaging.toml | 7 + azure-mgmt-apimanagement/setup.cfg | 2 + azure-mgmt-apimanagement/setup.py | 88 + 419 files changed, 43677 insertions(+) create mode 100644 azure-mgmt-apimanagement/HISTORY.rst create mode 100644 azure-mgmt-apimanagement/MANIFEST.in create mode 100644 azure-mgmt-apimanagement/README.rst create mode 100644 azure-mgmt-apimanagement/azure/__init__.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/__init__.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/__init__.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/api_management_client.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/__init__.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_client_enums.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_paged.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name_py3.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/__init__.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_diagnostic_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_export_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_attachment_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_comment_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_skus_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_policy_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_policy_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_product_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_release_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_revision_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_schema_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_tag_description_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_version_set_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/authorization_server_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/backend_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/cache_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/certificate_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/delegation_settings_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/diagnostic_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/email_template_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_user_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/identity_provider_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/issue_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/logger_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/network_status_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_email_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_user_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/open_id_connect_provider_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/operation_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_snippet_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_api_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_group_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_policy_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_subscriptions_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/property_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_counter_keys_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_period_keys_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/region_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/reports_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_in_settings_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_up_settings_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/subscription_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_resource_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_git_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_configuration_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_confirmation_password_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_group_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_identities_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_subscription_operations.py create mode 100644 azure-mgmt-apimanagement/azure/mgmt/apimanagement/version.py create mode 100644 azure-mgmt-apimanagement/sdk_packaging.toml create mode 100644 azure-mgmt-apimanagement/setup.cfg create mode 100644 azure-mgmt-apimanagement/setup.py diff --git a/azure-mgmt-apimanagement/HISTORY.rst b/azure-mgmt-apimanagement/HISTORY.rst new file mode 100644 index 000000000000..718fe4794fce --- /dev/null +++ b/azure-mgmt-apimanagement/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2019-05-01) +++++++++++++++++++ + +* Initial Release diff --git a/azure-mgmt-apimanagement/MANIFEST.in b/azure-mgmt-apimanagement/MANIFEST.in new file mode 100644 index 000000000000..e4884efef41b --- /dev/null +++ b/azure-mgmt-apimanagement/MANIFEST.in @@ -0,0 +1,5 @@ +recursive-include tests *.py *.yaml +include *.rst +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-apimanagement/README.rst b/azure-mgmt-apimanagement/README.rst new file mode 100644 index 000000000000..ec8eea3c8439 --- /dev/null +++ b/azure-mgmt-apimanagement/README.rst @@ -0,0 +1,33 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure API Management Client Library. + +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Usage +===== + +For code examples, see `API Management +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. + + +.. image:: https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-mgmt-apimanagement%2FREADME.png diff --git a/azure-mgmt-apimanagement/azure/__init__.py b/azure-mgmt-apimanagement/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-apimanagement/azure/mgmt/__init__.py b/azure-mgmt-apimanagement/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/__init__.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/__init__.py new file mode 100644 index 000000000000..a25abe1811a6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/__init__.py @@ -0,0 +1,18 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .api_management_client import ApiManagementClient +from .version import VERSION + +__all__ = ['ApiManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/api_management_client.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/api_management_client.py new file mode 100644 index 000000000000..123b9684fa27 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/api_management_client.py @@ -0,0 +1,385 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.api_operations import ApiOperations +from .operations.api_revision_operations import ApiRevisionOperations +from .operations.api_release_operations import ApiReleaseOperations +from .operations.api_operation_operations import ApiOperationOperations +from .operations.api_operation_policy_operations import ApiOperationPolicyOperations +from .operations.tag_operations import TagOperations +from .operations.api_product_operations import ApiProductOperations +from .operations.api_policy_operations import ApiPolicyOperations +from .operations.api_schema_operations import ApiSchemaOperations +from .operations.api_diagnostic_operations import ApiDiagnosticOperations +from .operations.api_issue_operations import ApiIssueOperations +from .operations.api_issue_comment_operations import ApiIssueCommentOperations +from .operations.api_issue_attachment_operations import ApiIssueAttachmentOperations +from .operations.api_tag_description_operations import ApiTagDescriptionOperations +from .operations.operation_operations import OperationOperations +from .operations.api_version_set_operations import ApiVersionSetOperations +from .operations.authorization_server_operations import AuthorizationServerOperations +from .operations.backend_operations import BackendOperations +from .operations.cache_operations import CacheOperations +from .operations.certificate_operations import CertificateOperations +from .operations.api_management_operations import ApiManagementOperations +from .operations.api_management_service_skus_operations import ApiManagementServiceSkusOperations +from .operations.api_management_service_operations import ApiManagementServiceOperations +from .operations.diagnostic_operations import DiagnosticOperations +from .operations.email_template_operations import EmailTemplateOperations +from .operations.group_operations import GroupOperations +from .operations.group_user_operations import GroupUserOperations +from .operations.identity_provider_operations import IdentityProviderOperations +from .operations.issue_operations import IssueOperations +from .operations.logger_operations import LoggerOperations +from .operations.network_status_operations import NetworkStatusOperations +from .operations.notification_operations import NotificationOperations +from .operations.notification_recipient_user_operations import NotificationRecipientUserOperations +from .operations.notification_recipient_email_operations import NotificationRecipientEmailOperations +from .operations.open_id_connect_provider_operations import OpenIdConnectProviderOperations +from .operations.policy_operations import PolicyOperations +from .operations.policy_snippet_operations import PolicySnippetOperations +from .operations.sign_in_settings_operations import SignInSettingsOperations +from .operations.sign_up_settings_operations import SignUpSettingsOperations +from .operations.delegation_settings_operations import DelegationSettingsOperations +from .operations.product_operations import ProductOperations +from .operations.product_api_operations import ProductApiOperations +from .operations.product_group_operations import ProductGroupOperations +from .operations.product_subscriptions_operations import ProductSubscriptionsOperations +from .operations.product_policy_operations import ProductPolicyOperations +from .operations.property_operations import PropertyOperations +from .operations.quota_by_counter_keys_operations import QuotaByCounterKeysOperations +from .operations.quota_by_period_keys_operations import QuotaByPeriodKeysOperations +from .operations.region_operations import RegionOperations +from .operations.reports_operations import ReportsOperations +from .operations.subscription_operations import SubscriptionOperations +from .operations.tag_resource_operations import TagResourceOperations +from .operations.tenant_access_operations import TenantAccessOperations +from .operations.tenant_access_git_operations import TenantAccessGitOperations +from .operations.tenant_configuration_operations import TenantConfigurationOperations +from .operations.user_operations import UserOperations +from .operations.user_group_operations import UserGroupOperations +from .operations.user_subscription_operations import UserSubscriptionOperations +from .operations.user_identities_operations import UserIdentitiesOperations +from .operations.user_confirmation_password_operations import UserConfirmationPasswordOperations +from .operations.api_export_operations import ApiExportOperations +from . import models + + +class ApiManagementClientConfiguration(AzureConfiguration): + """Configuration for ApiManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(ApiManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-apimanagement/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class ApiManagementClient(SDKClient): + """ApiManagement Client + + :ivar config: Configuration for client. + :vartype config: ApiManagementClientConfiguration + + :ivar api: Api operations + :vartype api: azure.mgmt.apimanagement.operations.ApiOperations + :ivar api_revision: ApiRevision operations + :vartype api_revision: azure.mgmt.apimanagement.operations.ApiRevisionOperations + :ivar api_release: ApiRelease operations + :vartype api_release: azure.mgmt.apimanagement.operations.ApiReleaseOperations + :ivar api_operation: ApiOperation operations + :vartype api_operation: azure.mgmt.apimanagement.operations.ApiOperationOperations + :ivar api_operation_policy: ApiOperationPolicy operations + :vartype api_operation_policy: azure.mgmt.apimanagement.operations.ApiOperationPolicyOperations + :ivar tag: Tag operations + :vartype tag: azure.mgmt.apimanagement.operations.TagOperations + :ivar api_product: ApiProduct operations + :vartype api_product: azure.mgmt.apimanagement.operations.ApiProductOperations + :ivar api_policy: ApiPolicy operations + :vartype api_policy: azure.mgmt.apimanagement.operations.ApiPolicyOperations + :ivar api_schema: ApiSchema operations + :vartype api_schema: azure.mgmt.apimanagement.operations.ApiSchemaOperations + :ivar api_diagnostic: ApiDiagnostic operations + :vartype api_diagnostic: azure.mgmt.apimanagement.operations.ApiDiagnosticOperations + :ivar api_issue: ApiIssue operations + :vartype api_issue: azure.mgmt.apimanagement.operations.ApiIssueOperations + :ivar api_issue_comment: ApiIssueComment operations + :vartype api_issue_comment: azure.mgmt.apimanagement.operations.ApiIssueCommentOperations + :ivar api_issue_attachment: ApiIssueAttachment operations + :vartype api_issue_attachment: azure.mgmt.apimanagement.operations.ApiIssueAttachmentOperations + :ivar api_tag_description: ApiTagDescription operations + :vartype api_tag_description: azure.mgmt.apimanagement.operations.ApiTagDescriptionOperations + :ivar operation: Operation operations + :vartype operation: azure.mgmt.apimanagement.operations.OperationOperations + :ivar api_version_set: ApiVersionSet operations + :vartype api_version_set: azure.mgmt.apimanagement.operations.ApiVersionSetOperations + :ivar authorization_server: AuthorizationServer operations + :vartype authorization_server: azure.mgmt.apimanagement.operations.AuthorizationServerOperations + :ivar backend: Backend operations + :vartype backend: azure.mgmt.apimanagement.operations.BackendOperations + :ivar cache: Cache operations + :vartype cache: azure.mgmt.apimanagement.operations.CacheOperations + :ivar certificate: Certificate operations + :vartype certificate: azure.mgmt.apimanagement.operations.CertificateOperations + :ivar api_management_operations: ApiManagementOperations operations + :vartype api_management_operations: azure.mgmt.apimanagement.operations.ApiManagementOperations + :ivar api_management_service_skus: ApiManagementServiceSkus operations + :vartype api_management_service_skus: azure.mgmt.apimanagement.operations.ApiManagementServiceSkusOperations + :ivar api_management_service: ApiManagementService operations + :vartype api_management_service: azure.mgmt.apimanagement.operations.ApiManagementServiceOperations + :ivar diagnostic: Diagnostic operations + :vartype diagnostic: azure.mgmt.apimanagement.operations.DiagnosticOperations + :ivar email_template: EmailTemplate operations + :vartype email_template: azure.mgmt.apimanagement.operations.EmailTemplateOperations + :ivar group: Group operations + :vartype group: azure.mgmt.apimanagement.operations.GroupOperations + :ivar group_user: GroupUser operations + :vartype group_user: azure.mgmt.apimanagement.operations.GroupUserOperations + :ivar identity_provider: IdentityProvider operations + :vartype identity_provider: azure.mgmt.apimanagement.operations.IdentityProviderOperations + :ivar issue: Issue operations + :vartype issue: azure.mgmt.apimanagement.operations.IssueOperations + :ivar logger: Logger operations + :vartype logger: azure.mgmt.apimanagement.operations.LoggerOperations + :ivar network_status: NetworkStatus operations + :vartype network_status: azure.mgmt.apimanagement.operations.NetworkStatusOperations + :ivar notification: Notification operations + :vartype notification: azure.mgmt.apimanagement.operations.NotificationOperations + :ivar notification_recipient_user: NotificationRecipientUser operations + :vartype notification_recipient_user: azure.mgmt.apimanagement.operations.NotificationRecipientUserOperations + :ivar notification_recipient_email: NotificationRecipientEmail operations + :vartype notification_recipient_email: azure.mgmt.apimanagement.operations.NotificationRecipientEmailOperations + :ivar open_id_connect_provider: OpenIdConnectProvider operations + :vartype open_id_connect_provider: azure.mgmt.apimanagement.operations.OpenIdConnectProviderOperations + :ivar policy: Policy operations + :vartype policy: azure.mgmt.apimanagement.operations.PolicyOperations + :ivar policy_snippet: PolicySnippet operations + :vartype policy_snippet: azure.mgmt.apimanagement.operations.PolicySnippetOperations + :ivar sign_in_settings: SignInSettings operations + :vartype sign_in_settings: azure.mgmt.apimanagement.operations.SignInSettingsOperations + :ivar sign_up_settings: SignUpSettings operations + :vartype sign_up_settings: azure.mgmt.apimanagement.operations.SignUpSettingsOperations + :ivar delegation_settings: DelegationSettings operations + :vartype delegation_settings: azure.mgmt.apimanagement.operations.DelegationSettingsOperations + :ivar product: Product operations + :vartype product: azure.mgmt.apimanagement.operations.ProductOperations + :ivar product_api: ProductApi operations + :vartype product_api: azure.mgmt.apimanagement.operations.ProductApiOperations + :ivar product_group: ProductGroup operations + :vartype product_group: azure.mgmt.apimanagement.operations.ProductGroupOperations + :ivar product_subscriptions: ProductSubscriptions operations + :vartype product_subscriptions: azure.mgmt.apimanagement.operations.ProductSubscriptionsOperations + :ivar product_policy: ProductPolicy operations + :vartype product_policy: azure.mgmt.apimanagement.operations.ProductPolicyOperations + :ivar property: Property operations + :vartype property: azure.mgmt.apimanagement.operations.PropertyOperations + :ivar quota_by_counter_keys: QuotaByCounterKeys operations + :vartype quota_by_counter_keys: azure.mgmt.apimanagement.operations.QuotaByCounterKeysOperations + :ivar quota_by_period_keys: QuotaByPeriodKeys operations + :vartype quota_by_period_keys: azure.mgmt.apimanagement.operations.QuotaByPeriodKeysOperations + :ivar region: Region operations + :vartype region: azure.mgmt.apimanagement.operations.RegionOperations + :ivar reports: Reports operations + :vartype reports: azure.mgmt.apimanagement.operations.ReportsOperations + :ivar subscription: Subscription operations + :vartype subscription: azure.mgmt.apimanagement.operations.SubscriptionOperations + :ivar tag_resource: TagResource operations + :vartype tag_resource: azure.mgmt.apimanagement.operations.TagResourceOperations + :ivar tenant_access: TenantAccess operations + :vartype tenant_access: azure.mgmt.apimanagement.operations.TenantAccessOperations + :ivar tenant_access_git: TenantAccessGit operations + :vartype tenant_access_git: azure.mgmt.apimanagement.operations.TenantAccessGitOperations + :ivar tenant_configuration: TenantConfiguration operations + :vartype tenant_configuration: azure.mgmt.apimanagement.operations.TenantConfigurationOperations + :ivar user: User operations + :vartype user: azure.mgmt.apimanagement.operations.UserOperations + :ivar user_group: UserGroup operations + :vartype user_group: azure.mgmt.apimanagement.operations.UserGroupOperations + :ivar user_subscription: UserSubscription operations + :vartype user_subscription: azure.mgmt.apimanagement.operations.UserSubscriptionOperations + :ivar user_identities: UserIdentities operations + :vartype user_identities: azure.mgmt.apimanagement.operations.UserIdentitiesOperations + :ivar user_confirmation_password: UserConfirmationPassword operations + :vartype user_confirmation_password: azure.mgmt.apimanagement.operations.UserConfirmationPasswordOperations + :ivar api_export: ApiExport operations + :vartype api_export: azure.mgmt.apimanagement.operations.ApiExportOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = ApiManagementClientConfiguration(credentials, subscription_id, base_url) + super(ApiManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2019-01-01' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.api = ApiOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_revision = ApiRevisionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_release = ApiReleaseOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_operation = ApiOperationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_operation_policy = ApiOperationPolicyOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tag = TagOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_product = ApiProductOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_policy = ApiPolicyOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_schema = ApiSchemaOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_diagnostic = ApiDiagnosticOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_issue = ApiIssueOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_issue_comment = ApiIssueCommentOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_issue_attachment = ApiIssueAttachmentOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_tag_description = ApiTagDescriptionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operation = OperationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_version_set = ApiVersionSetOperations( + self._client, self.config, self._serialize, self._deserialize) + self.authorization_server = AuthorizationServerOperations( + self._client, self.config, self._serialize, self._deserialize) + self.backend = BackendOperations( + self._client, self.config, self._serialize, self._deserialize) + self.cache = CacheOperations( + self._client, self.config, self._serialize, self._deserialize) + self.certificate = CertificateOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_management_operations = ApiManagementOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_management_service_skus = ApiManagementServiceSkusOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_management_service = ApiManagementServiceOperations( + self._client, self.config, self._serialize, self._deserialize) + self.diagnostic = DiagnosticOperations( + self._client, self.config, self._serialize, self._deserialize) + self.email_template = EmailTemplateOperations( + self._client, self.config, self._serialize, self._deserialize) + self.group = GroupOperations( + self._client, self.config, self._serialize, self._deserialize) + self.group_user = GroupUserOperations( + self._client, self.config, self._serialize, self._deserialize) + self.identity_provider = IdentityProviderOperations( + self._client, self.config, self._serialize, self._deserialize) + self.issue = IssueOperations( + self._client, self.config, self._serialize, self._deserialize) + self.logger = LoggerOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_status = NetworkStatusOperations( + self._client, self.config, self._serialize, self._deserialize) + self.notification = NotificationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.notification_recipient_user = NotificationRecipientUserOperations( + self._client, self.config, self._serialize, self._deserialize) + self.notification_recipient_email = NotificationRecipientEmailOperations( + self._client, self.config, self._serialize, self._deserialize) + self.open_id_connect_provider = OpenIdConnectProviderOperations( + self._client, self.config, self._serialize, self._deserialize) + self.policy = PolicyOperations( + self._client, self.config, self._serialize, self._deserialize) + self.policy_snippet = PolicySnippetOperations( + self._client, self.config, self._serialize, self._deserialize) + self.sign_in_settings = SignInSettingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.sign_up_settings = SignUpSettingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.delegation_settings = DelegationSettingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.product = ProductOperations( + self._client, self.config, self._serialize, self._deserialize) + self.product_api = ProductApiOperations( + self._client, self.config, self._serialize, self._deserialize) + self.product_group = ProductGroupOperations( + self._client, self.config, self._serialize, self._deserialize) + self.product_subscriptions = ProductSubscriptionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.product_policy = ProductPolicyOperations( + self._client, self.config, self._serialize, self._deserialize) + self.property = PropertyOperations( + self._client, self.config, self._serialize, self._deserialize) + self.quota_by_counter_keys = QuotaByCounterKeysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.quota_by_period_keys = QuotaByPeriodKeysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.region = RegionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.reports = ReportsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.subscription = SubscriptionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tag_resource = TagResourceOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tenant_access = TenantAccessOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tenant_access_git = TenantAccessGitOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tenant_configuration = TenantConfigurationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.user = UserOperations( + self._client, self.config, self._serialize, self._deserialize) + self.user_group = UserGroupOperations( + self._client, self.config, self._serialize, self._deserialize) + self.user_subscription = UserSubscriptionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.user_identities = UserIdentitiesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.user_confirmation_password = UserConfirmationPasswordOperations( + self._client, self.config, self._serialize, self._deserialize) + self.api_export = ApiExportOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/__init__.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/__init__.py new file mode 100644 index 000000000000..5638845c3e6e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/__init__.py @@ -0,0 +1,623 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +try: + from .error_field_contract_py3 import ErrorFieldContract + from .error_response_body_py3 import ErrorResponseBody + from .error_response_py3 import ErrorResponse, ErrorResponseException + from .region_contract_py3 import RegionContract + from .resource_py3 import Resource + from .api_export_result_value_py3 import ApiExportResultValue + from .api_export_result_py3 import ApiExportResult + from .product_entity_base_parameters_py3 import ProductEntityBaseParameters + from .product_tag_resource_contract_properties_py3 import ProductTagResourceContractProperties + from .operation_tag_resource_contract_properties_py3 import OperationTagResourceContractProperties + from .subscription_key_parameter_names_contract_py3 import SubscriptionKeyParameterNamesContract + from .open_id_authentication_settings_contract_py3 import OpenIdAuthenticationSettingsContract + from .oauth2_authentication_settings_contract_py3 import OAuth2AuthenticationSettingsContract + from .authentication_settings_contract_py3 import AuthenticationSettingsContract + from .api_version_set_contract_details_py3 import ApiVersionSetContractDetails + from .api_create_or_update_properties_wsdl_selector_py3 import ApiCreateOrUpdatePropertiesWsdlSelector + from .api_contract_properties_py3 import ApiContractProperties + from .api_entity_base_contract_py3 import ApiEntityBaseContract + from .api_tag_resource_contract_properties_py3 import ApiTagResourceContractProperties + from .tag_tag_resource_contract_properties_py3 import TagTagResourceContractProperties + from .tag_resource_contract_py3 import TagResourceContract + from .tag_contract_py3 import TagContract + from .tag_description_contract_py3 import TagDescriptionContract + from .tag_description_create_parameters_py3 import TagDescriptionCreateParameters + from .issue_attachment_contract_py3 import IssueAttachmentContract + from .issue_comment_contract_py3 import IssueCommentContract + from .issue_contract_base_properties_py3 import IssueContractBaseProperties + from .issue_update_contract_py3 import IssueUpdateContract + from .issue_contract_py3 import IssueContract + from .body_diagnostic_settings_py3 import BodyDiagnosticSettings + from .http_message_diagnostic_py3 import HttpMessageDiagnostic + from .pipeline_diagnostic_settings_py3 import PipelineDiagnosticSettings + from .sampling_settings_py3 import SamplingSettings + from .diagnostic_contract_py3 import DiagnosticContract + from .schema_contract_py3 import SchemaContract + from .schema_create_or_update_contract_py3 import SchemaCreateOrUpdateContract + from .policy_contract_py3 import PolicyContract + from .policy_collection_py3 import PolicyCollection + from .product_contract_py3 import ProductContract + from .parameter_contract_py3 import ParameterContract + from .representation_contract_py3 import RepresentationContract + from .response_contract_py3 import ResponseContract + from .request_contract_py3 import RequestContract + from .operation_entity_base_contract_py3 import OperationEntityBaseContract + from .operation_update_contract_py3 import OperationUpdateContract + from .operation_contract_py3 import OperationContract + from .api_release_contract_py3 import ApiReleaseContract + from .api_revision_contract_py3 import ApiRevisionContract + from .api_update_contract_py3 import ApiUpdateContract + from .api_contract_py3 import ApiContract + from .api_create_or_update_parameter_py3 import ApiCreateOrUpdateParameter + from .api_version_set_entity_base_py3 import ApiVersionSetEntityBase + from .api_version_set_update_parameters_py3 import ApiVersionSetUpdateParameters + from .api_version_set_contract_py3 import ApiVersionSetContract + from .token_body_parameter_contract_py3 import TokenBodyParameterContract + from .authorization_server_contract_base_properties_py3 import AuthorizationServerContractBaseProperties + from .authorization_server_update_contract_py3 import AuthorizationServerUpdateContract + from .authorization_server_contract_py3 import AuthorizationServerContract + from .backend_reconnect_contract_py3 import BackendReconnectContract + from .backend_tls_properties_py3 import BackendTlsProperties + from .backend_proxy_contract_py3 import BackendProxyContract + from .backend_authorization_header_credentials_py3 import BackendAuthorizationHeaderCredentials + from .backend_credentials_contract_py3 import BackendCredentialsContract + from .x509_certificate_name_py3 import X509CertificateName + from .backend_service_fabric_cluster_properties_py3 import BackendServiceFabricClusterProperties + from .backend_properties_py3 import BackendProperties + from .backend_base_parameters_py3 import BackendBaseParameters + from .backend_update_parameters_py3 import BackendUpdateParameters + from .backend_contract_py3 import BackendContract + from .cache_update_parameters_py3 import CacheUpdateParameters + from .cache_contract_py3 import CacheContract + from .certificate_contract_py3 import CertificateContract + from .certificate_create_or_update_parameters_py3 import CertificateCreateOrUpdateParameters + from .resource_sku_py3 import ResourceSku + from .resource_sku_capacity_py3 import ResourceSkuCapacity + from .resource_sku_result_py3 import ResourceSkuResult + from .certificate_information_py3 import CertificateInformation + from .certificate_configuration_py3 import CertificateConfiguration + from .hostname_configuration_py3 import HostnameConfiguration + from .virtual_network_configuration_py3 import VirtualNetworkConfiguration + from .api_management_service_sku_properties_py3 import ApiManagementServiceSkuProperties + from .additional_location_py3 import AdditionalLocation + from .api_management_service_backup_restore_parameters_py3 import ApiManagementServiceBackupRestoreParameters + from .api_management_service_base_properties_py3 import ApiManagementServiceBaseProperties + from .api_management_service_identity_py3 import ApiManagementServiceIdentity + from .api_management_service_resource_py3 import ApiManagementServiceResource + from .apim_resource_py3 import ApimResource + from .api_management_service_update_parameters_py3 import ApiManagementServiceUpdateParameters + from .api_management_service_get_sso_token_result_py3 import ApiManagementServiceGetSsoTokenResult + from .api_management_service_check_name_availability_parameters_py3 import ApiManagementServiceCheckNameAvailabilityParameters + from .api_management_service_name_availability_result_py3 import ApiManagementServiceNameAvailabilityResult + from .api_management_service_apply_network_configuration_parameters_py3 import ApiManagementServiceApplyNetworkConfigurationParameters + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .email_template_parameters_contract_properties_py3 import EmailTemplateParametersContractProperties + from .email_template_update_parameters_py3 import EmailTemplateUpdateParameters + from .email_template_contract_py3 import EmailTemplateContract + from .user_identity_contract_py3 import UserIdentityContract + from .user_entity_base_parameters_py3 import UserEntityBaseParameters + from .group_contract_properties_py3 import GroupContractProperties + from .user_contract_py3 import UserContract + from .group_update_parameters_py3 import GroupUpdateParameters + from .group_contract_py3 import GroupContract + from .group_create_parameters_py3 import GroupCreateParameters + from .identity_provider_base_parameters_py3 import IdentityProviderBaseParameters + from .identity_provider_update_parameters_py3 import IdentityProviderUpdateParameters + from .identity_provider_contract_py3 import IdentityProviderContract + from .logger_update_contract_py3 import LoggerUpdateContract + from .logger_contract_py3 import LoggerContract + from .connectivity_status_contract_py3 import ConnectivityStatusContract + from .network_status_contract_py3 import NetworkStatusContract + from .network_status_contract_by_location_py3 import NetworkStatusContractByLocation + from .recipient_email_contract_py3 import RecipientEmailContract + from .recipient_email_collection_py3 import RecipientEmailCollection + from .recipient_user_contract_py3 import RecipientUserContract + from .recipient_user_collection_py3 import RecipientUserCollection + from .recipients_contract_properties_py3 import RecipientsContractProperties + from .notification_contract_py3 import NotificationContract + from .openid_connect_provider_update_contract_py3 import OpenidConnectProviderUpdateContract + from .openid_connect_provider_contract_py3 import OpenidConnectProviderContract + from .policy_snippet_contract_py3 import PolicySnippetContract + from .policy_snippets_collection_py3 import PolicySnippetsCollection + from .registration_delegation_settings_properties_py3 import RegistrationDelegationSettingsProperties + from .subscriptions_delegation_settings_properties_py3 import SubscriptionsDelegationSettingsProperties + from .portal_delegation_settings_py3 import PortalDelegationSettings + from .terms_of_service_properties_py3 import TermsOfServiceProperties + from .portal_signup_settings_py3 import PortalSignupSettings + from .portal_signin_settings_py3 import PortalSigninSettings + from .subscription_contract_py3 import SubscriptionContract + from .product_update_parameters_py3 import ProductUpdateParameters + from .property_entity_base_parameters_py3 import PropertyEntityBaseParameters + from .property_update_parameters_py3 import PropertyUpdateParameters + from .property_contract_py3 import PropertyContract + from .quota_counter_value_contract_properties_py3 import QuotaCounterValueContractProperties + from .quota_counter_contract_py3 import QuotaCounterContract + from .quota_counter_collection_py3 import QuotaCounterCollection + from .request_report_record_contract_py3 import RequestReportRecordContract + from .report_record_contract_py3 import ReportRecordContract + from .subscription_update_parameters_py3 import SubscriptionUpdateParameters + from .subscription_create_parameters_py3 import SubscriptionCreateParameters + from .tag_create_update_parameters_py3 import TagCreateUpdateParameters + from .tenant_configuration_sync_state_contract_py3 import TenantConfigurationSyncStateContract + from .operation_result_log_item_contract_py3 import OperationResultLogItemContract + from .operation_result_contract_py3 import OperationResultContract + from .deploy_configuration_parameters_py3 import DeployConfigurationParameters + from .save_configuration_parameter_py3 import SaveConfigurationParameter + from .access_information_contract_py3 import AccessInformationContract + from .access_information_update_parameters_py3 import AccessInformationUpdateParameters + from .user_token_result_py3 import UserTokenResult + from .user_token_parameters_py3 import UserTokenParameters + from .generate_sso_url_result_py3 import GenerateSsoUrlResult + from .user_update_parameters_py3 import UserUpdateParameters + from .user_create_parameters_py3 import UserCreateParameters + from .api_revision_info_contract_py3 import ApiRevisionInfoContract + from .quota_counter_value_contract_py3 import QuotaCounterValueContract +except (SyntaxError, ImportError): + from .error_field_contract import ErrorFieldContract + from .error_response_body import ErrorResponseBody + from .error_response import ErrorResponse, ErrorResponseException + from .region_contract import RegionContract + from .resource import Resource + from .api_export_result_value import ApiExportResultValue + from .api_export_result import ApiExportResult + from .product_entity_base_parameters import ProductEntityBaseParameters + from .product_tag_resource_contract_properties import ProductTagResourceContractProperties + from .operation_tag_resource_contract_properties import OperationTagResourceContractProperties + from .subscription_key_parameter_names_contract import SubscriptionKeyParameterNamesContract + from .open_id_authentication_settings_contract import OpenIdAuthenticationSettingsContract + from .oauth2_authentication_settings_contract import OAuth2AuthenticationSettingsContract + from .authentication_settings_contract import AuthenticationSettingsContract + from .api_version_set_contract_details import ApiVersionSetContractDetails + from .api_create_or_update_properties_wsdl_selector import ApiCreateOrUpdatePropertiesWsdlSelector + from .api_contract_properties import ApiContractProperties + from .api_entity_base_contract import ApiEntityBaseContract + from .api_tag_resource_contract_properties import ApiTagResourceContractProperties + from .tag_tag_resource_contract_properties import TagTagResourceContractProperties + from .tag_resource_contract import TagResourceContract + from .tag_contract import TagContract + from .tag_description_contract import TagDescriptionContract + from .tag_description_create_parameters import TagDescriptionCreateParameters + from .issue_attachment_contract import IssueAttachmentContract + from .issue_comment_contract import IssueCommentContract + from .issue_contract_base_properties import IssueContractBaseProperties + from .issue_update_contract import IssueUpdateContract + from .issue_contract import IssueContract + from .body_diagnostic_settings import BodyDiagnosticSettings + from .http_message_diagnostic import HttpMessageDiagnostic + from .pipeline_diagnostic_settings import PipelineDiagnosticSettings + from .sampling_settings import SamplingSettings + from .diagnostic_contract import DiagnosticContract + from .schema_contract import SchemaContract + from .schema_create_or_update_contract import SchemaCreateOrUpdateContract + from .policy_contract import PolicyContract + from .policy_collection import PolicyCollection + from .product_contract import ProductContract + from .parameter_contract import ParameterContract + from .representation_contract import RepresentationContract + from .response_contract import ResponseContract + from .request_contract import RequestContract + from .operation_entity_base_contract import OperationEntityBaseContract + from .operation_update_contract import OperationUpdateContract + from .operation_contract import OperationContract + from .api_release_contract import ApiReleaseContract + from .api_revision_contract import ApiRevisionContract + from .api_update_contract import ApiUpdateContract + from .api_contract import ApiContract + from .api_create_or_update_parameter import ApiCreateOrUpdateParameter + from .api_version_set_entity_base import ApiVersionSetEntityBase + from .api_version_set_update_parameters import ApiVersionSetUpdateParameters + from .api_version_set_contract import ApiVersionSetContract + from .token_body_parameter_contract import TokenBodyParameterContract + from .authorization_server_contract_base_properties import AuthorizationServerContractBaseProperties + from .authorization_server_update_contract import AuthorizationServerUpdateContract + from .authorization_server_contract import AuthorizationServerContract + from .backend_reconnect_contract import BackendReconnectContract + from .backend_tls_properties import BackendTlsProperties + from .backend_proxy_contract import BackendProxyContract + from .backend_authorization_header_credentials import BackendAuthorizationHeaderCredentials + from .backend_credentials_contract import BackendCredentialsContract + from .x509_certificate_name import X509CertificateName + from .backend_service_fabric_cluster_properties import BackendServiceFabricClusterProperties + from .backend_properties import BackendProperties + from .backend_base_parameters import BackendBaseParameters + from .backend_update_parameters import BackendUpdateParameters + from .backend_contract import BackendContract + from .cache_update_parameters import CacheUpdateParameters + from .cache_contract import CacheContract + from .certificate_contract import CertificateContract + from .certificate_create_or_update_parameters import CertificateCreateOrUpdateParameters + from .resource_sku import ResourceSku + from .resource_sku_capacity import ResourceSkuCapacity + from .resource_sku_result import ResourceSkuResult + from .certificate_information import CertificateInformation + from .certificate_configuration import CertificateConfiguration + from .hostname_configuration import HostnameConfiguration + from .virtual_network_configuration import VirtualNetworkConfiguration + from .api_management_service_sku_properties import ApiManagementServiceSkuProperties + from .additional_location import AdditionalLocation + from .api_management_service_backup_restore_parameters import ApiManagementServiceBackupRestoreParameters + from .api_management_service_base_properties import ApiManagementServiceBaseProperties + from .api_management_service_identity import ApiManagementServiceIdentity + from .api_management_service_resource import ApiManagementServiceResource + from .apim_resource import ApimResource + from .api_management_service_update_parameters import ApiManagementServiceUpdateParameters + from .api_management_service_get_sso_token_result import ApiManagementServiceGetSsoTokenResult + from .api_management_service_check_name_availability_parameters import ApiManagementServiceCheckNameAvailabilityParameters + from .api_management_service_name_availability_result import ApiManagementServiceNameAvailabilityResult + from .api_management_service_apply_network_configuration_parameters import ApiManagementServiceApplyNetworkConfigurationParameters + from .operation_display import OperationDisplay + from .operation import Operation + from .email_template_parameters_contract_properties import EmailTemplateParametersContractProperties + from .email_template_update_parameters import EmailTemplateUpdateParameters + from .email_template_contract import EmailTemplateContract + from .user_identity_contract import UserIdentityContract + from .user_entity_base_parameters import UserEntityBaseParameters + from .group_contract_properties import GroupContractProperties + from .user_contract import UserContract + from .group_update_parameters import GroupUpdateParameters + from .group_contract import GroupContract + from .group_create_parameters import GroupCreateParameters + from .identity_provider_base_parameters import IdentityProviderBaseParameters + from .identity_provider_update_parameters import IdentityProviderUpdateParameters + from .identity_provider_contract import IdentityProviderContract + from .logger_update_contract import LoggerUpdateContract + from .logger_contract import LoggerContract + from .connectivity_status_contract import ConnectivityStatusContract + from .network_status_contract import NetworkStatusContract + from .network_status_contract_by_location import NetworkStatusContractByLocation + from .recipient_email_contract import RecipientEmailContract + from .recipient_email_collection import RecipientEmailCollection + from .recipient_user_contract import RecipientUserContract + from .recipient_user_collection import RecipientUserCollection + from .recipients_contract_properties import RecipientsContractProperties + from .notification_contract import NotificationContract + from .openid_connect_provider_update_contract import OpenidConnectProviderUpdateContract + from .openid_connect_provider_contract import OpenidConnectProviderContract + from .policy_snippet_contract import PolicySnippetContract + from .policy_snippets_collection import PolicySnippetsCollection + from .registration_delegation_settings_properties import RegistrationDelegationSettingsProperties + from .subscriptions_delegation_settings_properties import SubscriptionsDelegationSettingsProperties + from .portal_delegation_settings import PortalDelegationSettings + from .terms_of_service_properties import TermsOfServiceProperties + from .portal_signup_settings import PortalSignupSettings + from .portal_signin_settings import PortalSigninSettings + from .subscription_contract import SubscriptionContract + from .product_update_parameters import ProductUpdateParameters + from .property_entity_base_parameters import PropertyEntityBaseParameters + from .property_update_parameters import PropertyUpdateParameters + from .property_contract import PropertyContract + from .quota_counter_value_contract_properties import QuotaCounterValueContractProperties + from .quota_counter_contract import QuotaCounterContract + from .quota_counter_collection import QuotaCounterCollection + from .request_report_record_contract import RequestReportRecordContract + from .report_record_contract import ReportRecordContract + from .subscription_update_parameters import SubscriptionUpdateParameters + from .subscription_create_parameters import SubscriptionCreateParameters + from .tag_create_update_parameters import TagCreateUpdateParameters + from .tenant_configuration_sync_state_contract import TenantConfigurationSyncStateContract + from .operation_result_log_item_contract import OperationResultLogItemContract + from .operation_result_contract import OperationResultContract + from .deploy_configuration_parameters import DeployConfigurationParameters + from .save_configuration_parameter import SaveConfigurationParameter + from .access_information_contract import AccessInformationContract + from .access_information_update_parameters import AccessInformationUpdateParameters + from .user_token_result import UserTokenResult + from .user_token_parameters import UserTokenParameters + from .generate_sso_url_result import GenerateSsoUrlResult + from .user_update_parameters import UserUpdateParameters + from .user_create_parameters import UserCreateParameters + from .api_revision_info_contract import ApiRevisionInfoContract + from .quota_counter_value_contract import QuotaCounterValueContract +from .api_contract_paged import ApiContractPaged +from .tag_resource_contract_paged import TagResourceContractPaged +from .api_revision_contract_paged import ApiRevisionContractPaged +from .api_release_contract_paged import ApiReleaseContractPaged +from .operation_contract_paged import OperationContractPaged +from .tag_contract_paged import TagContractPaged +from .product_contract_paged import ProductContractPaged +from .schema_contract_paged import SchemaContractPaged +from .diagnostic_contract_paged import DiagnosticContractPaged +from .issue_contract_paged import IssueContractPaged +from .issue_comment_contract_paged import IssueCommentContractPaged +from .issue_attachment_contract_paged import IssueAttachmentContractPaged +from .tag_description_contract_paged import TagDescriptionContractPaged +from .api_version_set_contract_paged import ApiVersionSetContractPaged +from .authorization_server_contract_paged import AuthorizationServerContractPaged +from .backend_contract_paged import BackendContractPaged +from .cache_contract_paged import CacheContractPaged +from .certificate_contract_paged import CertificateContractPaged +from .operation_paged import OperationPaged +from .resource_sku_result_paged import ResourceSkuResultPaged +from .api_management_service_resource_paged import ApiManagementServiceResourcePaged +from .email_template_contract_paged import EmailTemplateContractPaged +from .group_contract_paged import GroupContractPaged +from .user_contract_paged import UserContractPaged +from .identity_provider_contract_paged import IdentityProviderContractPaged +from .logger_contract_paged import LoggerContractPaged +from .notification_contract_paged import NotificationContractPaged +from .openid_connect_provider_contract_paged import OpenidConnectProviderContractPaged +from .subscription_contract_paged import SubscriptionContractPaged +from .property_contract_paged import PropertyContractPaged +from .region_contract_paged import RegionContractPaged +from .report_record_contract_paged import ReportRecordContractPaged +from .request_report_record_contract_paged import RequestReportRecordContractPaged +from .user_identity_contract_paged import UserIdentityContractPaged +from .api_management_client_enums import ( + ExportResultFormat, + ProductState, + BearerTokenSendingMethods, + Protocol, + ContentFormat, + SoapApiType, + ApiType, + State, + SamplingType, + AlwaysLog, + PolicyContentFormat, + VersioningScheme, + GrantType, + AuthorizationMethod, + ClientAuthenticationMethod, + BearerTokenSendingMethod, + BackendProtocol, + SkuType, + ResourceSkuCapacityScaleType, + HostnameType, + VirtualNetworkType, + NameAvailabilityReason, + Confirmation, + UserState, + GroupType, + IdentityProviderType, + LoggerType, + ConnectivityStatusType, + SubscriptionState, + AsyncOperationStatus, + KeyType, + NotificationName, + PolicyExportFormat, + TemplateName, + PolicyScopeContract, + ExportFormat, +) + +__all__ = [ + 'ErrorFieldContract', + 'ErrorResponseBody', + 'ErrorResponse', 'ErrorResponseException', + 'RegionContract', + 'Resource', + 'ApiExportResultValue', + 'ApiExportResult', + 'ProductEntityBaseParameters', + 'ProductTagResourceContractProperties', + 'OperationTagResourceContractProperties', + 'SubscriptionKeyParameterNamesContract', + 'OpenIdAuthenticationSettingsContract', + 'OAuth2AuthenticationSettingsContract', + 'AuthenticationSettingsContract', + 'ApiVersionSetContractDetails', + 'ApiCreateOrUpdatePropertiesWsdlSelector', + 'ApiContractProperties', + 'ApiEntityBaseContract', + 'ApiTagResourceContractProperties', + 'TagTagResourceContractProperties', + 'TagResourceContract', + 'TagContract', + 'TagDescriptionContract', + 'TagDescriptionCreateParameters', + 'IssueAttachmentContract', + 'IssueCommentContract', + 'IssueContractBaseProperties', + 'IssueUpdateContract', + 'IssueContract', + 'BodyDiagnosticSettings', + 'HttpMessageDiagnostic', + 'PipelineDiagnosticSettings', + 'SamplingSettings', + 'DiagnosticContract', + 'SchemaContract', + 'SchemaCreateOrUpdateContract', + 'PolicyContract', + 'PolicyCollection', + 'ProductContract', + 'ParameterContract', + 'RepresentationContract', + 'ResponseContract', + 'RequestContract', + 'OperationEntityBaseContract', + 'OperationUpdateContract', + 'OperationContract', + 'ApiReleaseContract', + 'ApiRevisionContract', + 'ApiUpdateContract', + 'ApiContract', + 'ApiCreateOrUpdateParameter', + 'ApiVersionSetEntityBase', + 'ApiVersionSetUpdateParameters', + 'ApiVersionSetContract', + 'TokenBodyParameterContract', + 'AuthorizationServerContractBaseProperties', + 'AuthorizationServerUpdateContract', + 'AuthorizationServerContract', + 'BackendReconnectContract', + 'BackendTlsProperties', + 'BackendProxyContract', + 'BackendAuthorizationHeaderCredentials', + 'BackendCredentialsContract', + 'X509CertificateName', + 'BackendServiceFabricClusterProperties', + 'BackendProperties', + 'BackendBaseParameters', + 'BackendUpdateParameters', + 'BackendContract', + 'CacheUpdateParameters', + 'CacheContract', + 'CertificateContract', + 'CertificateCreateOrUpdateParameters', + 'ResourceSku', + 'ResourceSkuCapacity', + 'ResourceSkuResult', + 'CertificateInformation', + 'CertificateConfiguration', + 'HostnameConfiguration', + 'VirtualNetworkConfiguration', + 'ApiManagementServiceSkuProperties', + 'AdditionalLocation', + 'ApiManagementServiceBackupRestoreParameters', + 'ApiManagementServiceBaseProperties', + 'ApiManagementServiceIdentity', + 'ApiManagementServiceResource', + 'ApimResource', + 'ApiManagementServiceUpdateParameters', + 'ApiManagementServiceGetSsoTokenResult', + 'ApiManagementServiceCheckNameAvailabilityParameters', + 'ApiManagementServiceNameAvailabilityResult', + 'ApiManagementServiceApplyNetworkConfigurationParameters', + 'OperationDisplay', + 'Operation', + 'EmailTemplateParametersContractProperties', + 'EmailTemplateUpdateParameters', + 'EmailTemplateContract', + 'UserIdentityContract', + 'UserEntityBaseParameters', + 'GroupContractProperties', + 'UserContract', + 'GroupUpdateParameters', + 'GroupContract', + 'GroupCreateParameters', + 'IdentityProviderBaseParameters', + 'IdentityProviderUpdateParameters', + 'IdentityProviderContract', + 'LoggerUpdateContract', + 'LoggerContract', + 'ConnectivityStatusContract', + 'NetworkStatusContract', + 'NetworkStatusContractByLocation', + 'RecipientEmailContract', + 'RecipientEmailCollection', + 'RecipientUserContract', + 'RecipientUserCollection', + 'RecipientsContractProperties', + 'NotificationContract', + 'OpenidConnectProviderUpdateContract', + 'OpenidConnectProviderContract', + 'PolicySnippetContract', + 'PolicySnippetsCollection', + 'RegistrationDelegationSettingsProperties', + 'SubscriptionsDelegationSettingsProperties', + 'PortalDelegationSettings', + 'TermsOfServiceProperties', + 'PortalSignupSettings', + 'PortalSigninSettings', + 'SubscriptionContract', + 'ProductUpdateParameters', + 'PropertyEntityBaseParameters', + 'PropertyUpdateParameters', + 'PropertyContract', + 'QuotaCounterValueContractProperties', + 'QuotaCounterContract', + 'QuotaCounterCollection', + 'RequestReportRecordContract', + 'ReportRecordContract', + 'SubscriptionUpdateParameters', + 'SubscriptionCreateParameters', + 'TagCreateUpdateParameters', + 'TenantConfigurationSyncStateContract', + 'OperationResultLogItemContract', + 'OperationResultContract', + 'DeployConfigurationParameters', + 'SaveConfigurationParameter', + 'AccessInformationContract', + 'AccessInformationUpdateParameters', + 'UserTokenResult', + 'UserTokenParameters', + 'GenerateSsoUrlResult', + 'UserUpdateParameters', + 'UserCreateParameters', + 'ApiRevisionInfoContract', + 'QuotaCounterValueContract', + 'ApiContractPaged', + 'TagResourceContractPaged', + 'ApiRevisionContractPaged', + 'ApiReleaseContractPaged', + 'OperationContractPaged', + 'TagContractPaged', + 'ProductContractPaged', + 'SchemaContractPaged', + 'DiagnosticContractPaged', + 'IssueContractPaged', + 'IssueCommentContractPaged', + 'IssueAttachmentContractPaged', + 'TagDescriptionContractPaged', + 'ApiVersionSetContractPaged', + 'AuthorizationServerContractPaged', + 'BackendContractPaged', + 'CacheContractPaged', + 'CertificateContractPaged', + 'OperationPaged', + 'ResourceSkuResultPaged', + 'ApiManagementServiceResourcePaged', + 'EmailTemplateContractPaged', + 'GroupContractPaged', + 'UserContractPaged', + 'IdentityProviderContractPaged', + 'LoggerContractPaged', + 'NotificationContractPaged', + 'OpenidConnectProviderContractPaged', + 'SubscriptionContractPaged', + 'PropertyContractPaged', + 'RegionContractPaged', + 'ReportRecordContractPaged', + 'RequestReportRecordContractPaged', + 'UserIdentityContractPaged', + 'ExportResultFormat', + 'ProductState', + 'BearerTokenSendingMethods', + 'Protocol', + 'ContentFormat', + 'SoapApiType', + 'ApiType', + 'State', + 'SamplingType', + 'AlwaysLog', + 'PolicyContentFormat', + 'VersioningScheme', + 'GrantType', + 'AuthorizationMethod', + 'ClientAuthenticationMethod', + 'BearerTokenSendingMethod', + 'BackendProtocol', + 'SkuType', + 'ResourceSkuCapacityScaleType', + 'HostnameType', + 'VirtualNetworkType', + 'NameAvailabilityReason', + 'Confirmation', + 'UserState', + 'GroupType', + 'IdentityProviderType', + 'LoggerType', + 'ConnectivityStatusType', + 'SubscriptionState', + 'AsyncOperationStatus', + 'KeyType', + 'NotificationName', + 'PolicyExportFormat', + 'TemplateName', + 'PolicyScopeContract', + 'ExportFormat', +] diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract.py new file mode 100644 index 000000000000..702ae821078a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccessInformationContract(Model): + """Tenant access information contract of the API Management service. + + :param id: Identifier. + :type id: str + :param primary_key: Primary access key. + :type primary_key: str + :param secondary_key: Secondary access key. + :type secondary_key: str + :param enabled: Determines whether direct access is enabled. + :type enabled: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'primary_key': {'key': 'primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'secondaryKey', 'type': 'str'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AccessInformationContract, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.primary_key = kwargs.get('primary_key', None) + self.secondary_key = kwargs.get('secondary_key', None) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract_py3.py new file mode 100644 index 000000000000..6d184b50f02f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_contract_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccessInformationContract(Model): + """Tenant access information contract of the API Management service. + + :param id: Identifier. + :type id: str + :param primary_key: Primary access key. + :type primary_key: str + :param secondary_key: Secondary access key. + :type secondary_key: str + :param enabled: Determines whether direct access is enabled. + :type enabled: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'primary_key': {'key': 'primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'secondaryKey', 'type': 'str'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, id: str=None, primary_key: str=None, secondary_key: str=None, enabled: bool=None, **kwargs) -> None: + super(AccessInformationContract, self).__init__(**kwargs) + self.id = id + self.primary_key = primary_key + self.secondary_key = secondary_key + self.enabled = enabled diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters.py new file mode 100644 index 000000000000..89d3de07c5ae --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccessInformationUpdateParameters(Model): + """Tenant access information update parameters. + + :param enabled: Determines whether direct access is enabled. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AccessInformationUpdateParameters, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters_py3.py new file mode 100644 index 000000000000..de481d924392 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/access_information_update_parameters_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccessInformationUpdateParameters(Model): + """Tenant access information update parameters. + + :param enabled: Determines whether direct access is enabled. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(AccessInformationUpdateParameters, self).__init__(**kwargs) + self.enabled = enabled diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location.py new file mode 100644 index 000000000000..430ac1bf55d6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalLocation(Model): + """Description of an additional API Management resource location. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param location: Required. The location name of the additional region + among Azure Data center regions. + :type location: str + :param sku: Required. SKU properties of the API Management service. + :type sku: + ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in the additional location. Available only for + Basic, Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service which is deployed in an Internal Virtual + Network in a particular additional location. Available only for Basic, + Standard and Premium SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration for + the location. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Region. + :vartype gateway_regional_url: str + """ + + _validation = { + 'location': {'required': True}, + 'sku': {'required': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ApiManagementServiceSkuProperties'}, + 'public_ip_addresses': {'key': 'publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'gateway_regional_url': {'key': 'gatewayRegionalUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AdditionalLocation, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.sku = kwargs.get('sku', None) + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = kwargs.get('virtual_network_configuration', None) + self.gateway_regional_url = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location_py3.py new file mode 100644 index 000000000000..8f03d06fa71c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/additional_location_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalLocation(Model): + """Description of an additional API Management resource location. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param location: Required. The location name of the additional region + among Azure Data center regions. + :type location: str + :param sku: Required. SKU properties of the API Management service. + :type sku: + ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in the additional location. Available only for + Basic, Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service which is deployed in an Internal Virtual + Network in a particular additional location. Available only for Basic, + Standard and Premium SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration for + the location. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Region. + :vartype gateway_regional_url: str + """ + + _validation = { + 'location': {'required': True}, + 'sku': {'required': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ApiManagementServiceSkuProperties'}, + 'public_ip_addresses': {'key': 'publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'gateway_regional_url': {'key': 'gatewayRegionalUrl', 'type': 'str'}, + } + + def __init__(self, *, location: str, sku, virtual_network_configuration=None, **kwargs) -> None: + super(AdditionalLocation, self).__init__(**kwargs) + self.location = location + self.sku = sku + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = virtual_network_configuration + self.gateway_regional_url = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract.py new file mode 100644 index 000000000000..8323712967c1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract.py @@ -0,0 +1,139 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ApiContract(Resource): + """Api details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param source_api_id: API identifier of the source API. + :type source_api_id: str + :param display_name: API name. Must be 1 to 300 characters long. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. Cannot be more than 2000 characters long. + :type service_url: str + :param path: Required. Relative URL uniquely identifying this API and all + of its resource paths within the API Management service instance. It is + appended to the API endpoint base URL specified during the service + instance creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 0}, + 'path': {'required': True, 'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authentication_settings': {'key': 'properties.authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'properties.subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'properties.type', 'type': 'str'}, + 'api_revision': {'key': 'properties.apiRevision', 'type': 'str'}, + 'api_version': {'key': 'properties.apiVersion', 'type': 'str'}, + 'is_current': {'key': 'properties.isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'properties.isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'properties.apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'properties.apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'properties.apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'source_api_id': {'key': 'properties.sourceApiId', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'service_url': {'key': 'properties.serviceUrl', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'protocols': {'key': 'properties.protocols', 'type': '[Protocol]'}, + 'api_version_set': {'key': 'properties.apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + } + + def __init__(self, **kwargs): + super(ApiContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authentication_settings = kwargs.get('authentication_settings', None) + self.subscription_key_parameter_names = kwargs.get('subscription_key_parameter_names', None) + self.api_type = kwargs.get('api_type', None) + self.api_revision = kwargs.get('api_revision', None) + self.api_version = kwargs.get('api_version', None) + self.is_current = kwargs.get('is_current', None) + self.is_online = None + self.api_revision_description = kwargs.get('api_revision_description', None) + self.api_version_description = kwargs.get('api_version_description', None) + self.api_version_set_id = kwargs.get('api_version_set_id', None) + self.subscription_required = kwargs.get('subscription_required', None) + self.source_api_id = kwargs.get('source_api_id', None) + self.display_name = kwargs.get('display_name', None) + self.service_url = kwargs.get('service_url', None) + self.path = kwargs.get('path', None) + self.protocols = kwargs.get('protocols', None) + self.api_version_set = kwargs.get('api_version_set', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_paged.py new file mode 100644 index 000000000000..35e5c717faa9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ApiContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApiContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApiContract]'} + } + + def __init__(self, *args, **kwargs): + + super(ApiContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties.py new file mode 100644 index 000000000000..eb5407d260bc --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties.py @@ -0,0 +1,115 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .api_entity_base_contract import ApiEntityBaseContract + + +class ApiContractProperties(ApiEntityBaseContract): + """Api Entity Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param source_api_id: API identifier of the source API. + :type source_api_id: str + :param display_name: API name. Must be 1 to 300 characters long. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. Cannot be more than 2000 characters long. + :type service_url: str + :param path: Required. Relative URL uniquely identifying this API and all + of its resource paths within the API Management service instance. It is + appended to the API endpoint base URL specified during the service + instance creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 0}, + 'path': {'required': True, 'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authentication_settings': {'key': 'authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'type', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'source_api_id': {'key': 'sourceApiId', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'service_url': {'key': 'serviceUrl', 'type': 'str'}, + 'path': {'key': 'path', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[Protocol]'}, + 'api_version_set': {'key': 'apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + } + + def __init__(self, **kwargs): + super(ApiContractProperties, self).__init__(**kwargs) + self.source_api_id = kwargs.get('source_api_id', None) + self.display_name = kwargs.get('display_name', None) + self.service_url = kwargs.get('service_url', None) + self.path = kwargs.get('path', None) + self.protocols = kwargs.get('protocols', None) + self.api_version_set = kwargs.get('api_version_set', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties_py3.py new file mode 100644 index 000000000000..5349453ac542 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_properties_py3.py @@ -0,0 +1,115 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .api_entity_base_contract_py3 import ApiEntityBaseContract + + +class ApiContractProperties(ApiEntityBaseContract): + """Api Entity Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param source_api_id: API identifier of the source API. + :type source_api_id: str + :param display_name: API name. Must be 1 to 300 characters long. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. Cannot be more than 2000 characters long. + :type service_url: str + :param path: Required. Relative URL uniquely identifying this API and all + of its resource paths within the API Management service instance. It is + appended to the API endpoint base URL specified during the service + instance creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 0}, + 'path': {'required': True, 'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authentication_settings': {'key': 'authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'type', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'source_api_id': {'key': 'sourceApiId', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'service_url': {'key': 'serviceUrl', 'type': 'str'}, + 'path': {'key': 'path', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[Protocol]'}, + 'api_version_set': {'key': 'apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + } + + def __init__(self, *, path: str, description: str=None, authentication_settings=None, subscription_key_parameter_names=None, api_type=None, api_revision: str=None, api_version: str=None, is_current: bool=None, api_revision_description: str=None, api_version_description: str=None, api_version_set_id: str=None, subscription_required: bool=None, source_api_id: str=None, display_name: str=None, service_url: str=None, protocols=None, api_version_set=None, **kwargs) -> None: + super(ApiContractProperties, self).__init__(description=description, authentication_settings=authentication_settings, subscription_key_parameter_names=subscription_key_parameter_names, api_type=api_type, api_revision=api_revision, api_version=api_version, is_current=is_current, api_revision_description=api_revision_description, api_version_description=api_version_description, api_version_set_id=api_version_set_id, subscription_required=subscription_required, **kwargs) + self.source_api_id = source_api_id + self.display_name = display_name + self.service_url = service_url + self.path = path + self.protocols = protocols + self.api_version_set = api_version_set diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_py3.py new file mode 100644 index 000000000000..561df1ff8548 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_contract_py3.py @@ -0,0 +1,139 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ApiContract(Resource): + """Api details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param source_api_id: API identifier of the source API. + :type source_api_id: str + :param display_name: API name. Must be 1 to 300 characters long. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. Cannot be more than 2000 characters long. + :type service_url: str + :param path: Required. Relative URL uniquely identifying this API and all + of its resource paths within the API Management service instance. It is + appended to the API endpoint base URL specified during the service + instance creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 0}, + 'path': {'required': True, 'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authentication_settings': {'key': 'properties.authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'properties.subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'properties.type', 'type': 'str'}, + 'api_revision': {'key': 'properties.apiRevision', 'type': 'str'}, + 'api_version': {'key': 'properties.apiVersion', 'type': 'str'}, + 'is_current': {'key': 'properties.isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'properties.isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'properties.apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'properties.apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'properties.apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'source_api_id': {'key': 'properties.sourceApiId', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'service_url': {'key': 'properties.serviceUrl', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'protocols': {'key': 'properties.protocols', 'type': '[Protocol]'}, + 'api_version_set': {'key': 'properties.apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + } + + def __init__(self, *, path: str, description: str=None, authentication_settings=None, subscription_key_parameter_names=None, api_type=None, api_revision: str=None, api_version: str=None, is_current: bool=None, api_revision_description: str=None, api_version_description: str=None, api_version_set_id: str=None, subscription_required: bool=None, source_api_id: str=None, display_name: str=None, service_url: str=None, protocols=None, api_version_set=None, **kwargs) -> None: + super(ApiContract, self).__init__(**kwargs) + self.description = description + self.authentication_settings = authentication_settings + self.subscription_key_parameter_names = subscription_key_parameter_names + self.api_type = api_type + self.api_revision = api_revision + self.api_version = api_version + self.is_current = is_current + self.is_online = None + self.api_revision_description = api_revision_description + self.api_version_description = api_version_description + self.api_version_set_id = api_version_set_id + self.subscription_required = subscription_required + self.source_api_id = source_api_id + self.display_name = display_name + self.service_url = service_url + self.path = path + self.protocols = protocols + self.api_version_set = api_version_set diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter.py new file mode 100644 index 000000000000..bd9f1969a5ab --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter.py @@ -0,0 +1,151 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiCreateOrUpdateParameter(Model): + """API Create or Update Parameters. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param source_api_id: API identifier of the source API. + :type source_api_id: str + :param display_name: API name. Must be 1 to 300 characters long. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. Cannot be more than 2000 characters long. + :type service_url: str + :param path: Required. Relative URL uniquely identifying this API and all + of its resource paths within the API Management service instance. It is + appended to the API endpoint base URL specified during the service + instance creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + :param value: Content value when Importing an API. + :type value: str + :param format: Format of the Content in which the API is getting imported. + Possible values include: 'wadl-xml', 'wadl-link-json', 'swagger-json', + 'swagger-link-json', 'wsdl', 'wsdl-link', 'openapi', 'openapi+json', + 'openapi-link' + :type format: str or ~azure.mgmt.apimanagement.models.ContentFormat + :param wsdl_selector: Criteria to limit import of WSDL to a subset of the + document. + :type wsdl_selector: + ~azure.mgmt.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector + :param soap_api_type: Type of Api to create. + * `http` creates a SOAP to REST API + * `soap` creates a SOAP pass-through API. Possible values include: + 'SoapToRest', 'SoapPassThrough' + :type soap_api_type: str or ~azure.mgmt.apimanagement.models.SoapApiType + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 0}, + 'path': {'required': True, 'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authentication_settings': {'key': 'properties.authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'properties.subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'properties.type', 'type': 'str'}, + 'api_revision': {'key': 'properties.apiRevision', 'type': 'str'}, + 'api_version': {'key': 'properties.apiVersion', 'type': 'str'}, + 'is_current': {'key': 'properties.isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'properties.isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'properties.apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'properties.apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'properties.apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'source_api_id': {'key': 'properties.sourceApiId', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'service_url': {'key': 'properties.serviceUrl', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'protocols': {'key': 'properties.protocols', 'type': '[Protocol]'}, + 'api_version_set': {'key': 'properties.apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'format': {'key': 'properties.format', 'type': 'str'}, + 'wsdl_selector': {'key': 'properties.wsdlSelector', 'type': 'ApiCreateOrUpdatePropertiesWsdlSelector'}, + 'soap_api_type': {'key': 'properties.apiType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiCreateOrUpdateParameter, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authentication_settings = kwargs.get('authentication_settings', None) + self.subscription_key_parameter_names = kwargs.get('subscription_key_parameter_names', None) + self.api_type = kwargs.get('api_type', None) + self.api_revision = kwargs.get('api_revision', None) + self.api_version = kwargs.get('api_version', None) + self.is_current = kwargs.get('is_current', None) + self.is_online = None + self.api_revision_description = kwargs.get('api_revision_description', None) + self.api_version_description = kwargs.get('api_version_description', None) + self.api_version_set_id = kwargs.get('api_version_set_id', None) + self.subscription_required = kwargs.get('subscription_required', None) + self.source_api_id = kwargs.get('source_api_id', None) + self.display_name = kwargs.get('display_name', None) + self.service_url = kwargs.get('service_url', None) + self.path = kwargs.get('path', None) + self.protocols = kwargs.get('protocols', None) + self.api_version_set = kwargs.get('api_version_set', None) + self.value = kwargs.get('value', None) + self.format = kwargs.get('format', None) + self.wsdl_selector = kwargs.get('wsdl_selector', None) + self.soap_api_type = kwargs.get('soap_api_type', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter_py3.py new file mode 100644 index 000000000000..a9a326b69906 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_parameter_py3.py @@ -0,0 +1,151 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiCreateOrUpdateParameter(Model): + """API Create or Update Parameters. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param source_api_id: API identifier of the source API. + :type source_api_id: str + :param display_name: API name. Must be 1 to 300 characters long. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. Cannot be more than 2000 characters long. + :type service_url: str + :param path: Required. Relative URL uniquely identifying this API and all + of its resource paths within the API Management service instance. It is + appended to the API endpoint base URL specified during the service + instance creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + :param value: Content value when Importing an API. + :type value: str + :param format: Format of the Content in which the API is getting imported. + Possible values include: 'wadl-xml', 'wadl-link-json', 'swagger-json', + 'swagger-link-json', 'wsdl', 'wsdl-link', 'openapi', 'openapi+json', + 'openapi-link' + :type format: str or ~azure.mgmt.apimanagement.models.ContentFormat + :param wsdl_selector: Criteria to limit import of WSDL to a subset of the + document. + :type wsdl_selector: + ~azure.mgmt.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector + :param soap_api_type: Type of Api to create. + * `http` creates a SOAP to REST API + * `soap` creates a SOAP pass-through API. Possible values include: + 'SoapToRest', 'SoapPassThrough' + :type soap_api_type: str or ~azure.mgmt.apimanagement.models.SoapApiType + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 0}, + 'path': {'required': True, 'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authentication_settings': {'key': 'properties.authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'properties.subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'properties.type', 'type': 'str'}, + 'api_revision': {'key': 'properties.apiRevision', 'type': 'str'}, + 'api_version': {'key': 'properties.apiVersion', 'type': 'str'}, + 'is_current': {'key': 'properties.isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'properties.isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'properties.apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'properties.apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'properties.apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'source_api_id': {'key': 'properties.sourceApiId', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'service_url': {'key': 'properties.serviceUrl', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'protocols': {'key': 'properties.protocols', 'type': '[Protocol]'}, + 'api_version_set': {'key': 'properties.apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'format': {'key': 'properties.format', 'type': 'str'}, + 'wsdl_selector': {'key': 'properties.wsdlSelector', 'type': 'ApiCreateOrUpdatePropertiesWsdlSelector'}, + 'soap_api_type': {'key': 'properties.apiType', 'type': 'str'}, + } + + def __init__(self, *, path: str, description: str=None, authentication_settings=None, subscription_key_parameter_names=None, api_type=None, api_revision: str=None, api_version: str=None, is_current: bool=None, api_revision_description: str=None, api_version_description: str=None, api_version_set_id: str=None, subscription_required: bool=None, source_api_id: str=None, display_name: str=None, service_url: str=None, protocols=None, api_version_set=None, value: str=None, format=None, wsdl_selector=None, soap_api_type=None, **kwargs) -> None: + super(ApiCreateOrUpdateParameter, self).__init__(**kwargs) + self.description = description + self.authentication_settings = authentication_settings + self.subscription_key_parameter_names = subscription_key_parameter_names + self.api_type = api_type + self.api_revision = api_revision + self.api_version = api_version + self.is_current = is_current + self.is_online = None + self.api_revision_description = api_revision_description + self.api_version_description = api_version_description + self.api_version_set_id = api_version_set_id + self.subscription_required = subscription_required + self.source_api_id = source_api_id + self.display_name = display_name + self.service_url = service_url + self.path = path + self.protocols = protocols + self.api_version_set = api_version_set + self.value = value + self.format = format + self.wsdl_selector = wsdl_selector + self.soap_api_type = soap_api_type diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector.py new file mode 100644 index 000000000000..f94026f29f08 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiCreateOrUpdatePropertiesWsdlSelector(Model): + """Criteria to limit import of WSDL to a subset of the document. + + :param wsdl_service_name: Name of service to import from WSDL + :type wsdl_service_name: str + :param wsdl_endpoint_name: Name of endpoint(port) to import from WSDL + :type wsdl_endpoint_name: str + """ + + _attribute_map = { + 'wsdl_service_name': {'key': 'wsdlServiceName', 'type': 'str'}, + 'wsdl_endpoint_name': {'key': 'wsdlEndpointName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiCreateOrUpdatePropertiesWsdlSelector, self).__init__(**kwargs) + self.wsdl_service_name = kwargs.get('wsdl_service_name', None) + self.wsdl_endpoint_name = kwargs.get('wsdl_endpoint_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector_py3.py new file mode 100644 index 000000000000..cd7249f0e0ba --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_create_or_update_properties_wsdl_selector_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiCreateOrUpdatePropertiesWsdlSelector(Model): + """Criteria to limit import of WSDL to a subset of the document. + + :param wsdl_service_name: Name of service to import from WSDL + :type wsdl_service_name: str + :param wsdl_endpoint_name: Name of endpoint(port) to import from WSDL + :type wsdl_endpoint_name: str + """ + + _attribute_map = { + 'wsdl_service_name': {'key': 'wsdlServiceName', 'type': 'str'}, + 'wsdl_endpoint_name': {'key': 'wsdlEndpointName', 'type': 'str'}, + } + + def __init__(self, *, wsdl_service_name: str=None, wsdl_endpoint_name: str=None, **kwargs) -> None: + super(ApiCreateOrUpdatePropertiesWsdlSelector, self).__init__(**kwargs) + self.wsdl_service_name = wsdl_service_name + self.wsdl_endpoint_name = wsdl_endpoint_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract.py new file mode 100644 index 000000000000..502a877256df --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiEntityBaseContract(Model): + """API base contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authentication_settings': {'key': 'authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'type', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ApiEntityBaseContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authentication_settings = kwargs.get('authentication_settings', None) + self.subscription_key_parameter_names = kwargs.get('subscription_key_parameter_names', None) + self.api_type = kwargs.get('api_type', None) + self.api_revision = kwargs.get('api_revision', None) + self.api_version = kwargs.get('api_version', None) + self.is_current = kwargs.get('is_current', None) + self.is_online = None + self.api_revision_description = kwargs.get('api_revision_description', None) + self.api_version_description = kwargs.get('api_version_description', None) + self.api_version_set_id = kwargs.get('api_version_set_id', None) + self.subscription_required = kwargs.get('subscription_required', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract_py3.py new file mode 100644 index 000000000000..d64875b6de90 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_entity_base_contract_py3.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiEntityBaseContract(Model): + """API base contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authentication_settings': {'key': 'authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'type', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + } + + def __init__(self, *, description: str=None, authentication_settings=None, subscription_key_parameter_names=None, api_type=None, api_revision: str=None, api_version: str=None, is_current: bool=None, api_revision_description: str=None, api_version_description: str=None, api_version_set_id: str=None, subscription_required: bool=None, **kwargs) -> None: + super(ApiEntityBaseContract, self).__init__(**kwargs) + self.description = description + self.authentication_settings = authentication_settings + self.subscription_key_parameter_names = subscription_key_parameter_names + self.api_type = api_type + self.api_revision = api_revision + self.api_version = api_version + self.is_current = is_current + self.is_online = None + self.api_revision_description = api_revision_description + self.api_version_description = api_version_description + self.api_version_set_id = api_version_set_id + self.subscription_required = subscription_required diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result.py new file mode 100644 index 000000000000..46f85d9a27af --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiExportResult(Model): + """API Export result. + + :param id: ResourceId of the API which was exported. + :type id: str + :param export_result_format: Format in which the Api Details are exported + to the Storage Blob with Sas Key valid for 5 minutes. Possible values + include: 'Swagger', 'Wsdl', 'Wadl', 'OpenApi' + :type export_result_format: str or + ~azure.mgmt.apimanagement.models.ExportResultFormat + :param value: The object defining the schema of the exported Api Detail + :type value: ~azure.mgmt.apimanagement.models.ApiExportResultValue + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'export_result_format': {'key': 'format', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'ApiExportResultValue'}, + } + + def __init__(self, **kwargs): + super(ApiExportResult, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.export_result_format = kwargs.get('export_result_format', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_py3.py new file mode 100644 index 000000000000..ac710fddacbd --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiExportResult(Model): + """API Export result. + + :param id: ResourceId of the API which was exported. + :type id: str + :param export_result_format: Format in which the Api Details are exported + to the Storage Blob with Sas Key valid for 5 minutes. Possible values + include: 'Swagger', 'Wsdl', 'Wadl', 'OpenApi' + :type export_result_format: str or + ~azure.mgmt.apimanagement.models.ExportResultFormat + :param value: The object defining the schema of the exported Api Detail + :type value: ~azure.mgmt.apimanagement.models.ApiExportResultValue + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'export_result_format': {'key': 'format', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'ApiExportResultValue'}, + } + + def __init__(self, *, id: str=None, export_result_format=None, value=None, **kwargs) -> None: + super(ApiExportResult, self).__init__(**kwargs) + self.id = id + self.export_result_format = export_result_format + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value.py new file mode 100644 index 000000000000..e0554a63b849 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiExportResultValue(Model): + """The object defining the schema of the exported Api Detail. + + :param link: Link to the Storage Blob containing the result of the export + operation. The Blob Uri is only valid for 5 minutes. + :type link: str + """ + + _attribute_map = { + 'link': {'key': 'link', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiExportResultValue, self).__init__(**kwargs) + self.link = kwargs.get('link', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value_py3.py new file mode 100644 index 000000000000..521bd611cb33 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_export_result_value_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiExportResultValue(Model): + """The object defining the schema of the exported Api Detail. + + :param link: Link to the Storage Blob containing the result of the export + operation. The Blob Uri is only valid for 5 minutes. + :type link: str + """ + + _attribute_map = { + 'link': {'key': 'link', 'type': 'str'}, + } + + def __init__(self, *, link: str=None, **kwargs) -> None: + super(ApiExportResultValue, self).__init__(**kwargs) + self.link = link diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_client_enums.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_client_enums.py new file mode 100644 index 000000000000..8dd8aae6af1f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_client_enums.py @@ -0,0 +1,294 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from enum import Enum + + +class ExportResultFormat(str, Enum): + + swagger = "swagger-link-json" #: The Api Definition is exported in OpenApi Specification 2.0 format to the Storage Blob. + wsdl = "wsdl-link+xml" #: The Api Definition is exported in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap` + wadl = "wadl-link-json" #: Export the Api Definition in WADL Schema to Storage Blob. + open_api = "openapi-link" #: Export the Api Definition in OpenApi Specification 3.0 to Storage Blob. + + +class ProductState(str, Enum): + + not_published = "notPublished" + published = "published" + + +class BearerTokenSendingMethods(str, Enum): + + authorization_header = "authorizationHeader" #: Access token will be transmitted in the Authorization header using Bearer schema + query = "query" #: Access token will be transmitted as query parameters. + + +class Protocol(str, Enum): + + http = "http" + https = "https" + + +class ContentFormat(str, Enum): + + wadl_xml = "wadl-xml" #: The contents are inline and Content type is a WADL document. + wadl_link_json = "wadl-link-json" #: The WADL document is hosted on a publicly accessible internet address. + swagger_json = "swagger-json" #: The contents are inline and Content Type is a OpenApi 2.0 Document. + swagger_link_json = "swagger-link-json" #: The Open Api 2.0 document is hosted on a publicly accessible internet address. + wsdl = "wsdl" #: The contents are inline and the document is a WSDL/Soap document. + wsdl_link = "wsdl-link" #: The WSDL document is hosted on a publicly accessible internet address. + openapi = "openapi" #: The contents are inline and Content Type is a OpenApi 3.0 Document in YAML format. + openapijson = "openapi+json" #: The contents are inline and Content Type is a OpenApi 3.0 Document in JSON format. + openapi_link = "openapi-link" #: The Open Api 3.0 document is hosted on a publicly accessible internet address. + + +class SoapApiType(str, Enum): + + soap_to_rest = "http" #: Imports a SOAP API having a RESTful front end. + soap_pass_through = "soap" #: Imports the Soap API having a SOAP front end. + + +class ApiType(str, Enum): + + http = "http" + soap = "soap" + + +class State(str, Enum): + + proposed = "proposed" #: The issue is proposed. + open = "open" #: The issue is opened. + removed = "removed" #: The issue was removed. + resolved = "resolved" #: The issue is now resolved. + closed = "closed" #: The issue was closed. + + +class SamplingType(str, Enum): + + fixed = "fixed" #: Fixed-rate sampling. + + +class AlwaysLog(str, Enum): + + all_errors = "allErrors" #: Always log all erroneous request regardless of sampling settings. + + +class PolicyContentFormat(str, Enum): + + xml = "xml" #: The contents are inline and Content type is an XML document. + xml_link = "xml-link" #: The policy XML document is hosted on a http endpoint accessible from the API Management service. + rawxml = "rawxml" #: The contents are inline and Content type is a non XML encoded policy document. + rawxml_link = "rawxml-link" #: The policy document is not Xml encoded and is hosted on a http endpoint accessible from the API Management service. + + +class VersioningScheme(str, Enum): + + segment = "Segment" #: The API Version is passed in a path segment. + query = "Query" #: The API Version is passed in a query parameter. + header = "Header" #: The API Version is passed in a HTTP header. + + +class GrantType(str, Enum): + + authorization_code = "authorizationCode" #: Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1. + implicit = "implicit" #: Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2. + resource_owner_password = "resourceOwnerPassword" #: Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3. + client_credentials = "clientCredentials" #: Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4. + + +class AuthorizationMethod(str, Enum): + + head = "HEAD" + options = "OPTIONS" + trace = "TRACE" + get = "GET" + post = "POST" + put = "PUT" + patch = "PATCH" + delete = "DELETE" + + +class ClientAuthenticationMethod(str, Enum): + + basic = "Basic" #: Basic Client Authentication method. + body = "Body" #: Body based Authentication method. + + +class BearerTokenSendingMethod(str, Enum): + + authorization_header = "authorizationHeader" + query = "query" + + +class BackendProtocol(str, Enum): + + http = "http" #: The Backend is a RESTful service. + soap = "soap" #: The Backend is a SOAP service. + + +class SkuType(str, Enum): + + developer = "Developer" #: Developer SKU of Api Management. + standard = "Standard" #: Standard SKU of Api Management. + premium = "Premium" #: Premium SKU of Api Management. + basic = "Basic" #: Basic SKU of Api Management. + consumption = "Consumption" #: Consumption SKU of Api Management. + + +class ResourceSkuCapacityScaleType(str, Enum): + + automatic = "automatic" #: Supported scale type automatic. + manual = "manual" #: Supported scale type manual. + none = "none" #: Scaling not supported. + + +class HostnameType(str, Enum): + + proxy = "Proxy" + portal = "Portal" + management = "Management" + scm = "Scm" + developer_portal = "DeveloperPortal" + + +class VirtualNetworkType(str, Enum): + + none = "None" #: The service is not part of any Virtual Network. + external = "External" #: The service is part of Virtual Network and it is accessible from Internet. + internal = "Internal" #: The service is part of Virtual Network and it is only accessible from within the virtual network. + + +class NameAvailabilityReason(str, Enum): + + valid = "Valid" + invalid = "Invalid" + already_exists = "AlreadyExists" + + +class Confirmation(str, Enum): + + signup = "signup" #: Send an e-mail to the user confirming they have successfully signed up. + invite = "invite" #: Send an e-mail inviting the user to sign-up and complete registration. + + +class UserState(str, Enum): + + active = "active" #: User state is active. + blocked = "blocked" #: User is blocked. Blocked users cannot authenticate at developer portal or call API. + pending = "pending" #: User account is pending. Requires identity confirmation before it can be made active. + deleted = "deleted" #: User account is closed. All identities and related entities are removed. + + +class GroupType(str, Enum): + + custom = "custom" + system = "system" + external = "external" + + +class IdentityProviderType(str, Enum): + + facebook = "facebook" #: Facebook as Identity provider. + google = "google" #: Google as Identity provider. + microsoft = "microsoft" #: Microsoft Live as Identity provider. + twitter = "twitter" #: Twitter as Identity provider. + aad = "aad" #: Azure Active Directory as Identity provider. + aad_b2_c = "aadB2C" #: Azure Active Directory B2C as Identity provider. + + +class LoggerType(str, Enum): + + azure_event_hub = "azureEventHub" #: Azure Event Hub as log destination. + application_insights = "applicationInsights" #: Azure Application Insights as log destination. + + +class ConnectivityStatusType(str, Enum): + + initializing = "initializing" + success = "success" + failure = "failure" + + +class SubscriptionState(str, Enum): + + suspended = "suspended" + active = "active" + expired = "expired" + submitted = "submitted" + rejected = "rejected" + cancelled = "cancelled" + + +class AsyncOperationStatus(str, Enum): + + started = "Started" + in_progress = "InProgress" + succeeded = "Succeeded" + failed = "Failed" + + +class KeyType(str, Enum): + + primary = "primary" + secondary = "secondary" + + +class NotificationName(str, Enum): + + request_publisher_notification_message = "RequestPublisherNotificationMessage" #: The following email recipients and users will receive email notifications about subscription requests for API products requiring approval. + purchase_publisher_notification_message = "PurchasePublisherNotificationMessage" #: The following email recipients and users will receive email notifications about new API product subscriptions. + new_application_notification_message = "NewApplicationNotificationMessage" #: The following email recipients and users will receive email notifications when new applications are submitted to the application gallery. + bcc = "BCC" #: The following recipients will receive blind carbon copies of all emails sent to developers. + new_issue_publisher_notification_message = "NewIssuePublisherNotificationMessage" #: The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal. + account_closed_publisher = "AccountClosedPublisher" #: The following email recipients and users will receive email notifications when developer closes his account. + quota_limit_approaching_publisher_notification_message = "QuotaLimitApproachingPublisherNotificationMessage" #: The following email recipients and users will receive email notifications when subscription usage gets close to usage quota. + + +class PolicyExportFormat(str, Enum): + + xml = "xml" #: The contents are inline and Content type is an XML document. + rawxml = "rawxml" #: The contents are inline and Content type is a non XML encoded policy document. + + +class TemplateName(str, Enum): + + application_approved_notification_message = "applicationApprovedNotificationMessage" + account_closed_developer = "accountClosedDeveloper" + quota_limit_approaching_developer_notification_message = "quotaLimitApproachingDeveloperNotificationMessage" + new_developer_notification_message = "newDeveloperNotificationMessage" + email_change_identity_default = "emailChangeIdentityDefault" + invite_user_notification_message = "inviteUserNotificationMessage" + new_comment_notification_message = "newCommentNotificationMessage" + confirm_sign_up_identity_default = "confirmSignUpIdentityDefault" + new_issue_notification_message = "newIssueNotificationMessage" + purchase_developer_notification_message = "purchaseDeveloperNotificationMessage" + password_reset_identity_default = "passwordResetIdentityDefault" + password_reset_by_admin_notification_message = "passwordResetByAdminNotificationMessage" + reject_developer_notification_message = "rejectDeveloperNotificationMessage" + request_developer_notification_message = "requestDeveloperNotificationMessage" + + +class PolicyScopeContract(str, Enum): + + tenant = "Tenant" + product = "Product" + api = "Api" + operation = "Operation" + all = "All" + + +class ExportFormat(str, Enum): + + swagger = "swagger-link" #: Export the Api Definition in OpenApi Specification 2.0 format to the Storage Blob. + wsdl = "wsdl-link" #: Export the Api Definition in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap` + wadl = "wadl-link" #: Export the Api Definition in WADL Schema to Storage Blob. + openapi = "openapi-link" #: Export the Api Definition in OpenApi Specification 3.0 to Storage Blob. diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters.py new file mode 100644 index 000000000000..7de08f790795 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceApplyNetworkConfigurationParameters(Model): + """Parameter supplied to the Apply Network configuration operation. + + :param location: Location of the Api Management service to update for a + multi-region service. For a service deployed in a single region, this + parameter is not required. + :type location: str + """ + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceApplyNetworkConfigurationParameters, self).__init__(**kwargs) + self.location = kwargs.get('location', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters_py3.py new file mode 100644 index 000000000000..315f5e2859ca --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_apply_network_configuration_parameters_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceApplyNetworkConfigurationParameters(Model): + """Parameter supplied to the Apply Network configuration operation. + + :param location: Location of the Api Management service to update for a + multi-region service. For a service deployed in a single region, this + parameter is not required. + :type location: str + """ + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, *, location: str=None, **kwargs) -> None: + super(ApiManagementServiceApplyNetworkConfigurationParameters, self).__init__(**kwargs) + self.location = location diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters.py new file mode 100644 index 000000000000..9cde1269f3f7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceBackupRestoreParameters(Model): + """Parameters supplied to the Backup/Restore of an API Management service + operation. + + All required parameters must be populated in order to send to Azure. + + :param storage_account: Required. Azure Cloud Storage account (used to + place/retrieve the backup) name. + :type storage_account: str + :param access_key: Required. Azure Cloud Storage account (used to + place/retrieve the backup) access key. + :type access_key: str + :param container_name: Required. Azure Cloud Storage blob container name + used to place/retrieve the backup. + :type container_name: str + :param backup_name: Required. The name of the backup file to create. + :type backup_name: str + """ + + _validation = { + 'storage_account': {'required': True}, + 'access_key': {'required': True}, + 'container_name': {'required': True}, + 'backup_name': {'required': True}, + } + + _attribute_map = { + 'storage_account': {'key': 'storageAccount', 'type': 'str'}, + 'access_key': {'key': 'accessKey', 'type': 'str'}, + 'container_name': {'key': 'containerName', 'type': 'str'}, + 'backup_name': {'key': 'backupName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceBackupRestoreParameters, self).__init__(**kwargs) + self.storage_account = kwargs.get('storage_account', None) + self.access_key = kwargs.get('access_key', None) + self.container_name = kwargs.get('container_name', None) + self.backup_name = kwargs.get('backup_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters_py3.py new file mode 100644 index 000000000000..e6cba95e6129 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_backup_restore_parameters_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceBackupRestoreParameters(Model): + """Parameters supplied to the Backup/Restore of an API Management service + operation. + + All required parameters must be populated in order to send to Azure. + + :param storage_account: Required. Azure Cloud Storage account (used to + place/retrieve the backup) name. + :type storage_account: str + :param access_key: Required. Azure Cloud Storage account (used to + place/retrieve the backup) access key. + :type access_key: str + :param container_name: Required. Azure Cloud Storage blob container name + used to place/retrieve the backup. + :type container_name: str + :param backup_name: Required. The name of the backup file to create. + :type backup_name: str + """ + + _validation = { + 'storage_account': {'required': True}, + 'access_key': {'required': True}, + 'container_name': {'required': True}, + 'backup_name': {'required': True}, + } + + _attribute_map = { + 'storage_account': {'key': 'storageAccount', 'type': 'str'}, + 'access_key': {'key': 'accessKey', 'type': 'str'}, + 'container_name': {'key': 'containerName', 'type': 'str'}, + 'backup_name': {'key': 'backupName', 'type': 'str'}, + } + + def __init__(self, *, storage_account: str, access_key: str, container_name: str, backup_name: str, **kwargs) -> None: + super(ApiManagementServiceBackupRestoreParameters, self).__init__(**kwargs) + self.storage_account = storage_account + self.access_key = access_key + self.container_name = container_name + self.backup_name = backup_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties.py new file mode 100644 index 000000000000..7cf72fd0ab20 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties.py @@ -0,0 +1,157 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceBaseProperties(Model): + """Base Properties of an API Management service resource description. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param notification_sender_email: Email address from which the + notification will be sent. + :type notification_sender_email: str + :ivar provisioning_state: The current provisioning state of the API + Management service which can be one of the following: + Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. + :vartype provisioning_state: str + :ivar target_provisioning_state: The provisioning state of the API + Management service, which is targeted by the long running operation + started on the service. + :vartype target_provisioning_state: str + :ivar created_at_utc: Creation UTC date of the API Management service.The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :vartype created_at_utc: datetime + :ivar gateway_url: Gateway URL of the API Management service. + :vartype gateway_url: str + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Default Region. + :vartype gateway_regional_url: str + :ivar portal_url: Publisher portal endpoint Url of the API Management + service. + :vartype portal_url: str + :ivar management_api_url: Management API endpoint URL of the API + Management service. + :vartype management_api_url: str + :ivar scm_url: SCM endpoint URL of the API Management service. + :vartype scm_url: str + :param hostname_configurations: Custom hostname configuration of the API + Management service. + :type hostname_configurations: + list[~azure.mgmt.apimanagement.models.HostnameConfiguration] + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in Primary region. Available only for Basic, + Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service in Primary region which is deployed in an + Internal Virtual Network. Available only for Basic, Standard and Premium + SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration of the + API Management service. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :param additional_locations: Additional datacenter locations of the API + Management service. + :type additional_locations: + list[~azure.mgmt.apimanagement.models.AdditionalLocation] + :param custom_properties: Custom properties of the API Management service. + Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` + will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 + and 1.2). Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` + can be used to disable just TLS 1.1 and setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` + can be used to disable TLS 1.0 on an API Management service. + :type custom_properties: dict[str, str] + :param certificates: List of Certificates that need to be installed in the + API Management service. Max supported certificates that can be installed + is 10. + :type certificates: + list[~azure.mgmt.apimanagement.models.CertificateConfiguration] + :param enable_client_certificate: Property only meant to be used for + Consumption SKU Service. This enforces a client certificate to be + presented on each request to the gateway. This also enables the ability to + authenticate the certificate in the policy on the gateway. Default value: + False . + :type enable_client_certificate: bool + :param virtual_network_type: The type of VPN in which API Management + service needs to be configured in. None (Default Value) means the API + Management service is not part of any Virtual Network, External means the + API Management deployment is set up inside a Virtual Network having an + Internet Facing Endpoint, and Internal means that API Management + deployment is setup inside a Virtual Network having an Intranet Facing + Endpoint only. Possible values include: 'None', 'External', 'Internal'. + Default value: "None" . + :type virtual_network_type: str or + ~azure.mgmt.apimanagement.models.VirtualNetworkType + """ + + _validation = { + 'notification_sender_email': {'max_length': 100}, + 'provisioning_state': {'readonly': True}, + 'target_provisioning_state': {'readonly': True}, + 'created_at_utc': {'readonly': True}, + 'gateway_url': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + 'portal_url': {'readonly': True}, + 'management_api_url': {'readonly': True}, + 'scm_url': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + } + + _attribute_map = { + 'notification_sender_email': {'key': 'notificationSenderEmail', 'type': 'str'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'target_provisioning_state': {'key': 'targetProvisioningState', 'type': 'str'}, + 'created_at_utc': {'key': 'createdAtUtc', 'type': 'iso-8601'}, + 'gateway_url': {'key': 'gatewayUrl', 'type': 'str'}, + 'gateway_regional_url': {'key': 'gatewayRegionalUrl', 'type': 'str'}, + 'portal_url': {'key': 'portalUrl', 'type': 'str'}, + 'management_api_url': {'key': 'managementApiUrl', 'type': 'str'}, + 'scm_url': {'key': 'scmUrl', 'type': 'str'}, + 'hostname_configurations': {'key': 'hostnameConfigurations', 'type': '[HostnameConfiguration]'}, + 'public_ip_addresses': {'key': 'publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'additional_locations': {'key': 'additionalLocations', 'type': '[AdditionalLocation]'}, + 'custom_properties': {'key': 'customProperties', 'type': '{str}'}, + 'certificates': {'key': 'certificates', 'type': '[CertificateConfiguration]'}, + 'enable_client_certificate': {'key': 'enableClientCertificate', 'type': 'bool'}, + 'virtual_network_type': {'key': 'virtualNetworkType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceBaseProperties, self).__init__(**kwargs) + self.notification_sender_email = kwargs.get('notification_sender_email', None) + self.provisioning_state = None + self.target_provisioning_state = None + self.created_at_utc = None + self.gateway_url = None + self.gateway_regional_url = None + self.portal_url = None + self.management_api_url = None + self.scm_url = None + self.hostname_configurations = kwargs.get('hostname_configurations', None) + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = kwargs.get('virtual_network_configuration', None) + self.additional_locations = kwargs.get('additional_locations', None) + self.custom_properties = kwargs.get('custom_properties', None) + self.certificates = kwargs.get('certificates', None) + self.enable_client_certificate = kwargs.get('enable_client_certificate', False) + self.virtual_network_type = kwargs.get('virtual_network_type', "None") diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties_py3.py new file mode 100644 index 000000000000..cadc56f88b6b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_base_properties_py3.py @@ -0,0 +1,157 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceBaseProperties(Model): + """Base Properties of an API Management service resource description. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param notification_sender_email: Email address from which the + notification will be sent. + :type notification_sender_email: str + :ivar provisioning_state: The current provisioning state of the API + Management service which can be one of the following: + Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. + :vartype provisioning_state: str + :ivar target_provisioning_state: The provisioning state of the API + Management service, which is targeted by the long running operation + started on the service. + :vartype target_provisioning_state: str + :ivar created_at_utc: Creation UTC date of the API Management service.The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :vartype created_at_utc: datetime + :ivar gateway_url: Gateway URL of the API Management service. + :vartype gateway_url: str + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Default Region. + :vartype gateway_regional_url: str + :ivar portal_url: Publisher portal endpoint Url of the API Management + service. + :vartype portal_url: str + :ivar management_api_url: Management API endpoint URL of the API + Management service. + :vartype management_api_url: str + :ivar scm_url: SCM endpoint URL of the API Management service. + :vartype scm_url: str + :param hostname_configurations: Custom hostname configuration of the API + Management service. + :type hostname_configurations: + list[~azure.mgmt.apimanagement.models.HostnameConfiguration] + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in Primary region. Available only for Basic, + Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service in Primary region which is deployed in an + Internal Virtual Network. Available only for Basic, Standard and Premium + SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration of the + API Management service. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :param additional_locations: Additional datacenter locations of the API + Management service. + :type additional_locations: + list[~azure.mgmt.apimanagement.models.AdditionalLocation] + :param custom_properties: Custom properties of the API Management service. + Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` + will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 + and 1.2). Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` + can be used to disable just TLS 1.1 and setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` + can be used to disable TLS 1.0 on an API Management service. + :type custom_properties: dict[str, str] + :param certificates: List of Certificates that need to be installed in the + API Management service. Max supported certificates that can be installed + is 10. + :type certificates: + list[~azure.mgmt.apimanagement.models.CertificateConfiguration] + :param enable_client_certificate: Property only meant to be used for + Consumption SKU Service. This enforces a client certificate to be + presented on each request to the gateway. This also enables the ability to + authenticate the certificate in the policy on the gateway. Default value: + False . + :type enable_client_certificate: bool + :param virtual_network_type: The type of VPN in which API Management + service needs to be configured in. None (Default Value) means the API + Management service is not part of any Virtual Network, External means the + API Management deployment is set up inside a Virtual Network having an + Internet Facing Endpoint, and Internal means that API Management + deployment is setup inside a Virtual Network having an Intranet Facing + Endpoint only. Possible values include: 'None', 'External', 'Internal'. + Default value: "None" . + :type virtual_network_type: str or + ~azure.mgmt.apimanagement.models.VirtualNetworkType + """ + + _validation = { + 'notification_sender_email': {'max_length': 100}, + 'provisioning_state': {'readonly': True}, + 'target_provisioning_state': {'readonly': True}, + 'created_at_utc': {'readonly': True}, + 'gateway_url': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + 'portal_url': {'readonly': True}, + 'management_api_url': {'readonly': True}, + 'scm_url': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + } + + _attribute_map = { + 'notification_sender_email': {'key': 'notificationSenderEmail', 'type': 'str'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'target_provisioning_state': {'key': 'targetProvisioningState', 'type': 'str'}, + 'created_at_utc': {'key': 'createdAtUtc', 'type': 'iso-8601'}, + 'gateway_url': {'key': 'gatewayUrl', 'type': 'str'}, + 'gateway_regional_url': {'key': 'gatewayRegionalUrl', 'type': 'str'}, + 'portal_url': {'key': 'portalUrl', 'type': 'str'}, + 'management_api_url': {'key': 'managementApiUrl', 'type': 'str'}, + 'scm_url': {'key': 'scmUrl', 'type': 'str'}, + 'hostname_configurations': {'key': 'hostnameConfigurations', 'type': '[HostnameConfiguration]'}, + 'public_ip_addresses': {'key': 'publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'additional_locations': {'key': 'additionalLocations', 'type': '[AdditionalLocation]'}, + 'custom_properties': {'key': 'customProperties', 'type': '{str}'}, + 'certificates': {'key': 'certificates', 'type': '[CertificateConfiguration]'}, + 'enable_client_certificate': {'key': 'enableClientCertificate', 'type': 'bool'}, + 'virtual_network_type': {'key': 'virtualNetworkType', 'type': 'str'}, + } + + def __init__(self, *, notification_sender_email: str=None, hostname_configurations=None, virtual_network_configuration=None, additional_locations=None, custom_properties=None, certificates=None, enable_client_certificate: bool=False, virtual_network_type="None", **kwargs) -> None: + super(ApiManagementServiceBaseProperties, self).__init__(**kwargs) + self.notification_sender_email = notification_sender_email + self.provisioning_state = None + self.target_provisioning_state = None + self.created_at_utc = None + self.gateway_url = None + self.gateway_regional_url = None + self.portal_url = None + self.management_api_url = None + self.scm_url = None + self.hostname_configurations = hostname_configurations + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = virtual_network_configuration + self.additional_locations = additional_locations + self.custom_properties = custom_properties + self.certificates = certificates + self.enable_client_certificate = enable_client_certificate + self.virtual_network_type = virtual_network_type diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters.py new file mode 100644 index 000000000000..621a58f23110 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceCheckNameAvailabilityParameters(Model): + """Parameters supplied to the CheckNameAvailability operation. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name to check for availability. + :type name: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceCheckNameAvailabilityParameters, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters_py3.py new file mode 100644 index 000000000000..8025048f1cb7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_check_name_availability_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceCheckNameAvailabilityParameters(Model): + """Parameters supplied to the CheckNameAvailability operation. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name to check for availability. + :type name: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str, **kwargs) -> None: + super(ApiManagementServiceCheckNameAvailabilityParameters, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result.py new file mode 100644 index 000000000000..34e758843486 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceGetSsoTokenResult(Model): + """The response of the GetSsoToken operation. + + :param redirect_uri: Redirect URL to the Publisher Portal containing the + SSO token. + :type redirect_uri: str + """ + + _attribute_map = { + 'redirect_uri': {'key': 'redirectUri', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceGetSsoTokenResult, self).__init__(**kwargs) + self.redirect_uri = kwargs.get('redirect_uri', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result_py3.py new file mode 100644 index 000000000000..607491621d49 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_get_sso_token_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceGetSsoTokenResult(Model): + """The response of the GetSsoToken operation. + + :param redirect_uri: Redirect URL to the Publisher Portal containing the + SSO token. + :type redirect_uri: str + """ + + _attribute_map = { + 'redirect_uri': {'key': 'redirectUri', 'type': 'str'}, + } + + def __init__(self, *, redirect_uri: str=None, **kwargs) -> None: + super(ApiManagementServiceGetSsoTokenResult, self).__init__(**kwargs) + self.redirect_uri = redirect_uri diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity.py new file mode 100644 index 000000000000..784c8854358d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceIdentity(Model): + """Identity properties of the Api Management service resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar type: Required. The identity type. Currently the only supported type + is 'SystemAssigned'. Default value: "SystemAssigned" . + :vartype type: str + :ivar principal_id: The principal id of the identity. + :vartype principal_id: str + :ivar tenant_id: The client tenant id of the identity. + :vartype tenant_id: str + """ + + _validation = { + 'type': {'required': True, 'constant': True}, + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + } + + type = "SystemAssigned" + + def __init__(self, **kwargs): + super(ApiManagementServiceIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity_py3.py new file mode 100644 index 000000000000..2ef5954875ef --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_identity_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceIdentity(Model): + """Identity properties of the Api Management service resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar type: Required. The identity type. Currently the only supported type + is 'SystemAssigned'. Default value: "SystemAssigned" . + :vartype type: str + :ivar principal_id: The principal id of the identity. + :vartype principal_id: str + :ivar tenant_id: The client tenant id of the identity. + :vartype tenant_id: str + """ + + _validation = { + 'type': {'required': True, 'constant': True}, + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + } + + type = "SystemAssigned" + + def __init__(self, **kwargs) -> None: + super(ApiManagementServiceIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result.py new file mode 100644 index 000000000000..dd5eda6bdb95 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceNameAvailabilityResult(Model): + """Response of the CheckNameAvailability operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name_available: True if the name is available and can be used to + create a new API Management service; otherwise false. + :vartype name_available: bool + :ivar message: If reason == invalid, provide the user with the reason why + the given name is invalid, and provide the resource naming requirements so + that the user can select a valid name. If reason == AlreadyExists, explain + that is already in use, and direct them to select a + different name. + :vartype message: str + :param reason: Invalid indicates the name provided does not match the + resource provider’s naming requirements (incorrect length, unsupported + characters, etc.) AlreadyExists indicates that the name is already in use + and is therefore unavailable. Possible values include: 'Valid', 'Invalid', + 'AlreadyExists' + :type reason: str or + ~azure.mgmt.apimanagement.models.NameAvailabilityReason + """ + + _validation = { + 'name_available': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'message': {'key': 'message', 'type': 'str'}, + 'reason': {'key': 'reason', 'type': 'NameAvailabilityReason'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceNameAvailabilityResult, self).__init__(**kwargs) + self.name_available = None + self.message = None + self.reason = kwargs.get('reason', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result_py3.py new file mode 100644 index 000000000000..3bae91346b47 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_name_availability_result_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceNameAvailabilityResult(Model): + """Response of the CheckNameAvailability operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name_available: True if the name is available and can be used to + create a new API Management service; otherwise false. + :vartype name_available: bool + :ivar message: If reason == invalid, provide the user with the reason why + the given name is invalid, and provide the resource naming requirements so + that the user can select a valid name. If reason == AlreadyExists, explain + that is already in use, and direct them to select a + different name. + :vartype message: str + :param reason: Invalid indicates the name provided does not match the + resource provider’s naming requirements (incorrect length, unsupported + characters, etc.) AlreadyExists indicates that the name is already in use + and is therefore unavailable. Possible values include: 'Valid', 'Invalid', + 'AlreadyExists' + :type reason: str or + ~azure.mgmt.apimanagement.models.NameAvailabilityReason + """ + + _validation = { + 'name_available': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'message': {'key': 'message', 'type': 'str'}, + 'reason': {'key': 'reason', 'type': 'NameAvailabilityReason'}, + } + + def __init__(self, *, reason=None, **kwargs) -> None: + super(ApiManagementServiceNameAvailabilityResult, self).__init__(**kwargs) + self.name_available = None + self.message = None + self.reason = reason diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource.py new file mode 100644 index 000000000000..23867d44ffdf --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource.py @@ -0,0 +1,206 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .apim_resource import ApimResource + + +class ApiManagementServiceResource(ApimResource): + """A single API Management service resource in List or Get response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource is set to + Microsoft.ApiManagement. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param notification_sender_email: Email address from which the + notification will be sent. + :type notification_sender_email: str + :ivar provisioning_state: The current provisioning state of the API + Management service which can be one of the following: + Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. + :vartype provisioning_state: str + :ivar target_provisioning_state: The provisioning state of the API + Management service, which is targeted by the long running operation + started on the service. + :vartype target_provisioning_state: str + :ivar created_at_utc: Creation UTC date of the API Management service.The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :vartype created_at_utc: datetime + :ivar gateway_url: Gateway URL of the API Management service. + :vartype gateway_url: str + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Default Region. + :vartype gateway_regional_url: str + :ivar portal_url: Publisher portal endpoint Url of the API Management + service. + :vartype portal_url: str + :ivar management_api_url: Management API endpoint URL of the API + Management service. + :vartype management_api_url: str + :ivar scm_url: SCM endpoint URL of the API Management service. + :vartype scm_url: str + :param hostname_configurations: Custom hostname configuration of the API + Management service. + :type hostname_configurations: + list[~azure.mgmt.apimanagement.models.HostnameConfiguration] + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in Primary region. Available only for Basic, + Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service in Primary region which is deployed in an + Internal Virtual Network. Available only for Basic, Standard and Premium + SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration of the + API Management service. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :param additional_locations: Additional datacenter locations of the API + Management service. + :type additional_locations: + list[~azure.mgmt.apimanagement.models.AdditionalLocation] + :param custom_properties: Custom properties of the API Management service. + Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` + will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 + and 1.2). Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` + can be used to disable just TLS 1.1 and setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` + can be used to disable TLS 1.0 on an API Management service. + :type custom_properties: dict[str, str] + :param certificates: List of Certificates that need to be installed in the + API Management service. Max supported certificates that can be installed + is 10. + :type certificates: + list[~azure.mgmt.apimanagement.models.CertificateConfiguration] + :param enable_client_certificate: Property only meant to be used for + Consumption SKU Service. This enforces a client certificate to be + presented on each request to the gateway. This also enables the ability to + authenticate the certificate in the policy on the gateway. Default value: + False . + :type enable_client_certificate: bool + :param virtual_network_type: The type of VPN in which API Management + service needs to be configured in. None (Default Value) means the API + Management service is not part of any Virtual Network, External means the + API Management deployment is set up inside a Virtual Network having an + Internet Facing Endpoint, and Internal means that API Management + deployment is setup inside a Virtual Network having an Intranet Facing + Endpoint only. Possible values include: 'None', 'External', 'Internal'. + Default value: "None" . + :type virtual_network_type: str or + ~azure.mgmt.apimanagement.models.VirtualNetworkType + :param publisher_email: Required. Publisher email. + :type publisher_email: str + :param publisher_name: Required. Publisher name. + :type publisher_name: str + :param sku: Required. SKU properties of the API Management service. + :type sku: + ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties + :param identity: Managed service identity of the Api Management service. + :type identity: + ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity + :param location: Required. Resource location. + :type location: str + :ivar etag: ETag of the resource. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'notification_sender_email': {'max_length': 100}, + 'provisioning_state': {'readonly': True}, + 'target_provisioning_state': {'readonly': True}, + 'created_at_utc': {'readonly': True}, + 'gateway_url': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + 'portal_url': {'readonly': True}, + 'management_api_url': {'readonly': True}, + 'scm_url': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + 'publisher_email': {'required': True, 'max_length': 100}, + 'publisher_name': {'required': True, 'max_length': 100}, + 'sku': {'required': True}, + 'location': {'required': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'notification_sender_email': {'key': 'properties.notificationSenderEmail', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'target_provisioning_state': {'key': 'properties.targetProvisioningState', 'type': 'str'}, + 'created_at_utc': {'key': 'properties.createdAtUtc', 'type': 'iso-8601'}, + 'gateway_url': {'key': 'properties.gatewayUrl', 'type': 'str'}, + 'gateway_regional_url': {'key': 'properties.gatewayRegionalUrl', 'type': 'str'}, + 'portal_url': {'key': 'properties.portalUrl', 'type': 'str'}, + 'management_api_url': {'key': 'properties.managementApiUrl', 'type': 'str'}, + 'scm_url': {'key': 'properties.scmUrl', 'type': 'str'}, + 'hostname_configurations': {'key': 'properties.hostnameConfigurations', 'type': '[HostnameConfiguration]'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'properties.privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'properties.virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'additional_locations': {'key': 'properties.additionalLocations', 'type': '[AdditionalLocation]'}, + 'custom_properties': {'key': 'properties.customProperties', 'type': '{str}'}, + 'certificates': {'key': 'properties.certificates', 'type': '[CertificateConfiguration]'}, + 'enable_client_certificate': {'key': 'properties.enableClientCertificate', 'type': 'bool'}, + 'virtual_network_type': {'key': 'properties.virtualNetworkType', 'type': 'str'}, + 'publisher_email': {'key': 'properties.publisherEmail', 'type': 'str'}, + 'publisher_name': {'key': 'properties.publisherName', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ApiManagementServiceSkuProperties'}, + 'identity': {'key': 'identity', 'type': 'ApiManagementServiceIdentity'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceResource, self).__init__(**kwargs) + self.notification_sender_email = kwargs.get('notification_sender_email', None) + self.provisioning_state = None + self.target_provisioning_state = None + self.created_at_utc = None + self.gateway_url = None + self.gateway_regional_url = None + self.portal_url = None + self.management_api_url = None + self.scm_url = None + self.hostname_configurations = kwargs.get('hostname_configurations', None) + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = kwargs.get('virtual_network_configuration', None) + self.additional_locations = kwargs.get('additional_locations', None) + self.custom_properties = kwargs.get('custom_properties', None) + self.certificates = kwargs.get('certificates', None) + self.enable_client_certificate = kwargs.get('enable_client_certificate', False) + self.virtual_network_type = kwargs.get('virtual_network_type', "None") + self.publisher_email = kwargs.get('publisher_email', None) + self.publisher_name = kwargs.get('publisher_name', None) + self.sku = kwargs.get('sku', None) + self.identity = kwargs.get('identity', None) + self.location = kwargs.get('location', None) + self.etag = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_paged.py new file mode 100644 index 000000000000..3f5ff2743b15 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ApiManagementServiceResourcePaged(Paged): + """ + A paging container for iterating over a list of :class:`ApiManagementServiceResource ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApiManagementServiceResource]'} + } + + def __init__(self, *args, **kwargs): + + super(ApiManagementServiceResourcePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_py3.py new file mode 100644 index 000000000000..8e2213108bd0 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_resource_py3.py @@ -0,0 +1,206 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .apim_resource_py3 import ApimResource + + +class ApiManagementServiceResource(ApimResource): + """A single API Management service resource in List or Get response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource is set to + Microsoft.ApiManagement. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param notification_sender_email: Email address from which the + notification will be sent. + :type notification_sender_email: str + :ivar provisioning_state: The current provisioning state of the API + Management service which can be one of the following: + Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. + :vartype provisioning_state: str + :ivar target_provisioning_state: The provisioning state of the API + Management service, which is targeted by the long running operation + started on the service. + :vartype target_provisioning_state: str + :ivar created_at_utc: Creation UTC date of the API Management service.The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :vartype created_at_utc: datetime + :ivar gateway_url: Gateway URL of the API Management service. + :vartype gateway_url: str + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Default Region. + :vartype gateway_regional_url: str + :ivar portal_url: Publisher portal endpoint Url of the API Management + service. + :vartype portal_url: str + :ivar management_api_url: Management API endpoint URL of the API + Management service. + :vartype management_api_url: str + :ivar scm_url: SCM endpoint URL of the API Management service. + :vartype scm_url: str + :param hostname_configurations: Custom hostname configuration of the API + Management service. + :type hostname_configurations: + list[~azure.mgmt.apimanagement.models.HostnameConfiguration] + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in Primary region. Available only for Basic, + Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service in Primary region which is deployed in an + Internal Virtual Network. Available only for Basic, Standard and Premium + SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration of the + API Management service. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :param additional_locations: Additional datacenter locations of the API + Management service. + :type additional_locations: + list[~azure.mgmt.apimanagement.models.AdditionalLocation] + :param custom_properties: Custom properties of the API Management service. + Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` + will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 + and 1.2). Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` + can be used to disable just TLS 1.1 and setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` + can be used to disable TLS 1.0 on an API Management service. + :type custom_properties: dict[str, str] + :param certificates: List of Certificates that need to be installed in the + API Management service. Max supported certificates that can be installed + is 10. + :type certificates: + list[~azure.mgmt.apimanagement.models.CertificateConfiguration] + :param enable_client_certificate: Property only meant to be used for + Consumption SKU Service. This enforces a client certificate to be + presented on each request to the gateway. This also enables the ability to + authenticate the certificate in the policy on the gateway. Default value: + False . + :type enable_client_certificate: bool + :param virtual_network_type: The type of VPN in which API Management + service needs to be configured in. None (Default Value) means the API + Management service is not part of any Virtual Network, External means the + API Management deployment is set up inside a Virtual Network having an + Internet Facing Endpoint, and Internal means that API Management + deployment is setup inside a Virtual Network having an Intranet Facing + Endpoint only. Possible values include: 'None', 'External', 'Internal'. + Default value: "None" . + :type virtual_network_type: str or + ~azure.mgmt.apimanagement.models.VirtualNetworkType + :param publisher_email: Required. Publisher email. + :type publisher_email: str + :param publisher_name: Required. Publisher name. + :type publisher_name: str + :param sku: Required. SKU properties of the API Management service. + :type sku: + ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties + :param identity: Managed service identity of the Api Management service. + :type identity: + ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity + :param location: Required. Resource location. + :type location: str + :ivar etag: ETag of the resource. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'notification_sender_email': {'max_length': 100}, + 'provisioning_state': {'readonly': True}, + 'target_provisioning_state': {'readonly': True}, + 'created_at_utc': {'readonly': True}, + 'gateway_url': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + 'portal_url': {'readonly': True}, + 'management_api_url': {'readonly': True}, + 'scm_url': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + 'publisher_email': {'required': True, 'max_length': 100}, + 'publisher_name': {'required': True, 'max_length': 100}, + 'sku': {'required': True}, + 'location': {'required': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'notification_sender_email': {'key': 'properties.notificationSenderEmail', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'target_provisioning_state': {'key': 'properties.targetProvisioningState', 'type': 'str'}, + 'created_at_utc': {'key': 'properties.createdAtUtc', 'type': 'iso-8601'}, + 'gateway_url': {'key': 'properties.gatewayUrl', 'type': 'str'}, + 'gateway_regional_url': {'key': 'properties.gatewayRegionalUrl', 'type': 'str'}, + 'portal_url': {'key': 'properties.portalUrl', 'type': 'str'}, + 'management_api_url': {'key': 'properties.managementApiUrl', 'type': 'str'}, + 'scm_url': {'key': 'properties.scmUrl', 'type': 'str'}, + 'hostname_configurations': {'key': 'properties.hostnameConfigurations', 'type': '[HostnameConfiguration]'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'properties.privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'properties.virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'additional_locations': {'key': 'properties.additionalLocations', 'type': '[AdditionalLocation]'}, + 'custom_properties': {'key': 'properties.customProperties', 'type': '{str}'}, + 'certificates': {'key': 'properties.certificates', 'type': '[CertificateConfiguration]'}, + 'enable_client_certificate': {'key': 'properties.enableClientCertificate', 'type': 'bool'}, + 'virtual_network_type': {'key': 'properties.virtualNetworkType', 'type': 'str'}, + 'publisher_email': {'key': 'properties.publisherEmail', 'type': 'str'}, + 'publisher_name': {'key': 'properties.publisherName', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ApiManagementServiceSkuProperties'}, + 'identity': {'key': 'identity', 'type': 'ApiManagementServiceIdentity'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, publisher_email: str, publisher_name: str, sku, location: str, tags=None, notification_sender_email: str=None, hostname_configurations=None, virtual_network_configuration=None, additional_locations=None, custom_properties=None, certificates=None, enable_client_certificate: bool=False, virtual_network_type="None", identity=None, **kwargs) -> None: + super(ApiManagementServiceResource, self).__init__(tags=tags, **kwargs) + self.notification_sender_email = notification_sender_email + self.provisioning_state = None + self.target_provisioning_state = None + self.created_at_utc = None + self.gateway_url = None + self.gateway_regional_url = None + self.portal_url = None + self.management_api_url = None + self.scm_url = None + self.hostname_configurations = hostname_configurations + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = virtual_network_configuration + self.additional_locations = additional_locations + self.custom_properties = custom_properties + self.certificates = certificates + self.enable_client_certificate = enable_client_certificate + self.virtual_network_type = virtual_network_type + self.publisher_email = publisher_email + self.publisher_name = publisher_name + self.sku = sku + self.identity = identity + self.location = location + self.etag = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties.py new file mode 100644 index 000000000000..1ccc258b22e6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceSkuProperties(Model): + """API Management service resource SKU properties. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Name of the Sku. Possible values include: + 'Developer', 'Standard', 'Premium', 'Basic', 'Consumption' + :type name: str or ~azure.mgmt.apimanagement.models.SkuType + :param capacity: Capacity of the SKU (number of deployed units of the + SKU). + :type capacity: int + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceSkuProperties, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties_py3.py new file mode 100644 index 000000000000..d9a425f3986f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_sku_properties_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiManagementServiceSkuProperties(Model): + """API Management service resource SKU properties. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Name of the Sku. Possible values include: + 'Developer', 'Standard', 'Premium', 'Basic', 'Consumption' + :type name: str or ~azure.mgmt.apimanagement.models.SkuType + :param capacity: Capacity of the SKU (number of deployed units of the + SKU). + :type capacity: int + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name, capacity: int=None, **kwargs) -> None: + super(ApiManagementServiceSkuProperties, self).__init__(**kwargs) + self.name = name + self.capacity = capacity diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters.py new file mode 100644 index 000000000000..aca59f821f77 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters.py @@ -0,0 +1,198 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .apim_resource import ApimResource + + +class ApiManagementServiceUpdateParameters(ApimResource): + """Parameter supplied to Update Api Management Service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource is set to + Microsoft.ApiManagement. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param notification_sender_email: Email address from which the + notification will be sent. + :type notification_sender_email: str + :ivar provisioning_state: The current provisioning state of the API + Management service which can be one of the following: + Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. + :vartype provisioning_state: str + :ivar target_provisioning_state: The provisioning state of the API + Management service, which is targeted by the long running operation + started on the service. + :vartype target_provisioning_state: str + :ivar created_at_utc: Creation UTC date of the API Management service.The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :vartype created_at_utc: datetime + :ivar gateway_url: Gateway URL of the API Management service. + :vartype gateway_url: str + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Default Region. + :vartype gateway_regional_url: str + :ivar portal_url: Publisher portal endpoint Url of the API Management + service. + :vartype portal_url: str + :ivar management_api_url: Management API endpoint URL of the API + Management service. + :vartype management_api_url: str + :ivar scm_url: SCM endpoint URL of the API Management service. + :vartype scm_url: str + :param hostname_configurations: Custom hostname configuration of the API + Management service. + :type hostname_configurations: + list[~azure.mgmt.apimanagement.models.HostnameConfiguration] + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in Primary region. Available only for Basic, + Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service in Primary region which is deployed in an + Internal Virtual Network. Available only for Basic, Standard and Premium + SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration of the + API Management service. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :param additional_locations: Additional datacenter locations of the API + Management service. + :type additional_locations: + list[~azure.mgmt.apimanagement.models.AdditionalLocation] + :param custom_properties: Custom properties of the API Management service. + Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` + will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 + and 1.2). Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` + can be used to disable just TLS 1.1 and setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` + can be used to disable TLS 1.0 on an API Management service. + :type custom_properties: dict[str, str] + :param certificates: List of Certificates that need to be installed in the + API Management service. Max supported certificates that can be installed + is 10. + :type certificates: + list[~azure.mgmt.apimanagement.models.CertificateConfiguration] + :param enable_client_certificate: Property only meant to be used for + Consumption SKU Service. This enforces a client certificate to be + presented on each request to the gateway. This also enables the ability to + authenticate the certificate in the policy on the gateway. Default value: + False . + :type enable_client_certificate: bool + :param virtual_network_type: The type of VPN in which API Management + service needs to be configured in. None (Default Value) means the API + Management service is not part of any Virtual Network, External means the + API Management deployment is set up inside a Virtual Network having an + Internet Facing Endpoint, and Internal means that API Management + deployment is setup inside a Virtual Network having an Intranet Facing + Endpoint only. Possible values include: 'None', 'External', 'Internal'. + Default value: "None" . + :type virtual_network_type: str or + ~azure.mgmt.apimanagement.models.VirtualNetworkType + :param publisher_email: Publisher email. + :type publisher_email: str + :param publisher_name: Publisher name. + :type publisher_name: str + :param sku: SKU properties of the API Management service. + :type sku: + ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties + :param identity: Managed service identity of the Api Management service. + :type identity: + ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity + :ivar etag: ETag of the resource. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'notification_sender_email': {'max_length': 100}, + 'provisioning_state': {'readonly': True}, + 'target_provisioning_state': {'readonly': True}, + 'created_at_utc': {'readonly': True}, + 'gateway_url': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + 'portal_url': {'readonly': True}, + 'management_api_url': {'readonly': True}, + 'scm_url': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + 'publisher_email': {'max_length': 100}, + 'publisher_name': {'max_length': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'notification_sender_email': {'key': 'properties.notificationSenderEmail', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'target_provisioning_state': {'key': 'properties.targetProvisioningState', 'type': 'str'}, + 'created_at_utc': {'key': 'properties.createdAtUtc', 'type': 'iso-8601'}, + 'gateway_url': {'key': 'properties.gatewayUrl', 'type': 'str'}, + 'gateway_regional_url': {'key': 'properties.gatewayRegionalUrl', 'type': 'str'}, + 'portal_url': {'key': 'properties.portalUrl', 'type': 'str'}, + 'management_api_url': {'key': 'properties.managementApiUrl', 'type': 'str'}, + 'scm_url': {'key': 'properties.scmUrl', 'type': 'str'}, + 'hostname_configurations': {'key': 'properties.hostnameConfigurations', 'type': '[HostnameConfiguration]'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'properties.privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'properties.virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'additional_locations': {'key': 'properties.additionalLocations', 'type': '[AdditionalLocation]'}, + 'custom_properties': {'key': 'properties.customProperties', 'type': '{str}'}, + 'certificates': {'key': 'properties.certificates', 'type': '[CertificateConfiguration]'}, + 'enable_client_certificate': {'key': 'properties.enableClientCertificate', 'type': 'bool'}, + 'virtual_network_type': {'key': 'properties.virtualNetworkType', 'type': 'str'}, + 'publisher_email': {'key': 'properties.publisherEmail', 'type': 'str'}, + 'publisher_name': {'key': 'properties.publisherName', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ApiManagementServiceSkuProperties'}, + 'identity': {'key': 'identity', 'type': 'ApiManagementServiceIdentity'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiManagementServiceUpdateParameters, self).__init__(**kwargs) + self.notification_sender_email = kwargs.get('notification_sender_email', None) + self.provisioning_state = None + self.target_provisioning_state = None + self.created_at_utc = None + self.gateway_url = None + self.gateway_regional_url = None + self.portal_url = None + self.management_api_url = None + self.scm_url = None + self.hostname_configurations = kwargs.get('hostname_configurations', None) + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = kwargs.get('virtual_network_configuration', None) + self.additional_locations = kwargs.get('additional_locations', None) + self.custom_properties = kwargs.get('custom_properties', None) + self.certificates = kwargs.get('certificates', None) + self.enable_client_certificate = kwargs.get('enable_client_certificate', False) + self.virtual_network_type = kwargs.get('virtual_network_type', "None") + self.publisher_email = kwargs.get('publisher_email', None) + self.publisher_name = kwargs.get('publisher_name', None) + self.sku = kwargs.get('sku', None) + self.identity = kwargs.get('identity', None) + self.etag = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters_py3.py new file mode 100644 index 000000000000..76a51b033344 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_management_service_update_parameters_py3.py @@ -0,0 +1,198 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .apim_resource_py3 import ApimResource + + +class ApiManagementServiceUpdateParameters(ApimResource): + """Parameter supplied to Update Api Management Service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource is set to + Microsoft.ApiManagement. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param notification_sender_email: Email address from which the + notification will be sent. + :type notification_sender_email: str + :ivar provisioning_state: The current provisioning state of the API + Management service which can be one of the following: + Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. + :vartype provisioning_state: str + :ivar target_provisioning_state: The provisioning state of the API + Management service, which is targeted by the long running operation + started on the service. + :vartype target_provisioning_state: str + :ivar created_at_utc: Creation UTC date of the API Management service.The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :vartype created_at_utc: datetime + :ivar gateway_url: Gateway URL of the API Management service. + :vartype gateway_url: str + :ivar gateway_regional_url: Gateway URL of the API Management service in + the Default Region. + :vartype gateway_regional_url: str + :ivar portal_url: Publisher portal endpoint Url of the API Management + service. + :vartype portal_url: str + :ivar management_api_url: Management API endpoint URL of the API + Management service. + :vartype management_api_url: str + :ivar scm_url: SCM endpoint URL of the API Management service. + :vartype scm_url: str + :param hostname_configurations: Custom hostname configuration of the API + Management service. + :type hostname_configurations: + list[~azure.mgmt.apimanagement.models.HostnameConfiguration] + :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the + API Management service in Primary region. Available only for Basic, + Standard and Premium SKU. + :vartype public_ip_addresses: list[str] + :ivar private_ip_addresses: Private Static Load Balanced IP addresses of + the API Management service in Primary region which is deployed in an + Internal Virtual Network. Available only for Basic, Standard and Premium + SKU. + :vartype private_ip_addresses: list[str] + :param virtual_network_configuration: Virtual network configuration of the + API Management service. + :type virtual_network_configuration: + ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration + :param additional_locations: Additional datacenter locations of the API + Management service. + :type additional_locations: + list[~azure.mgmt.apimanagement.models.AdditionalLocation] + :param custom_properties: Custom properties of the API Management service. + Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` + will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 + and 1.2). Setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` + can be used to disable just TLS 1.1 and setting + `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` + can be used to disable TLS 1.0 on an API Management service. + :type custom_properties: dict[str, str] + :param certificates: List of Certificates that need to be installed in the + API Management service. Max supported certificates that can be installed + is 10. + :type certificates: + list[~azure.mgmt.apimanagement.models.CertificateConfiguration] + :param enable_client_certificate: Property only meant to be used for + Consumption SKU Service. This enforces a client certificate to be + presented on each request to the gateway. This also enables the ability to + authenticate the certificate in the policy on the gateway. Default value: + False . + :type enable_client_certificate: bool + :param virtual_network_type: The type of VPN in which API Management + service needs to be configured in. None (Default Value) means the API + Management service is not part of any Virtual Network, External means the + API Management deployment is set up inside a Virtual Network having an + Internet Facing Endpoint, and Internal means that API Management + deployment is setup inside a Virtual Network having an Intranet Facing + Endpoint only. Possible values include: 'None', 'External', 'Internal'. + Default value: "None" . + :type virtual_network_type: str or + ~azure.mgmt.apimanagement.models.VirtualNetworkType + :param publisher_email: Publisher email. + :type publisher_email: str + :param publisher_name: Publisher name. + :type publisher_name: str + :param sku: SKU properties of the API Management service. + :type sku: + ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties + :param identity: Managed service identity of the Api Management service. + :type identity: + ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity + :ivar etag: ETag of the resource. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'notification_sender_email': {'max_length': 100}, + 'provisioning_state': {'readonly': True}, + 'target_provisioning_state': {'readonly': True}, + 'created_at_utc': {'readonly': True}, + 'gateway_url': {'readonly': True}, + 'gateway_regional_url': {'readonly': True}, + 'portal_url': {'readonly': True}, + 'management_api_url': {'readonly': True}, + 'scm_url': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'private_ip_addresses': {'readonly': True}, + 'publisher_email': {'max_length': 100}, + 'publisher_name': {'max_length': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'notification_sender_email': {'key': 'properties.notificationSenderEmail', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'target_provisioning_state': {'key': 'properties.targetProvisioningState', 'type': 'str'}, + 'created_at_utc': {'key': 'properties.createdAtUtc', 'type': 'iso-8601'}, + 'gateway_url': {'key': 'properties.gatewayUrl', 'type': 'str'}, + 'gateway_regional_url': {'key': 'properties.gatewayRegionalUrl', 'type': 'str'}, + 'portal_url': {'key': 'properties.portalUrl', 'type': 'str'}, + 'management_api_url': {'key': 'properties.managementApiUrl', 'type': 'str'}, + 'scm_url': {'key': 'properties.scmUrl', 'type': 'str'}, + 'hostname_configurations': {'key': 'properties.hostnameConfigurations', 'type': '[HostnameConfiguration]'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[str]'}, + 'private_ip_addresses': {'key': 'properties.privateIPAddresses', 'type': '[str]'}, + 'virtual_network_configuration': {'key': 'properties.virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, + 'additional_locations': {'key': 'properties.additionalLocations', 'type': '[AdditionalLocation]'}, + 'custom_properties': {'key': 'properties.customProperties', 'type': '{str}'}, + 'certificates': {'key': 'properties.certificates', 'type': '[CertificateConfiguration]'}, + 'enable_client_certificate': {'key': 'properties.enableClientCertificate', 'type': 'bool'}, + 'virtual_network_type': {'key': 'properties.virtualNetworkType', 'type': 'str'}, + 'publisher_email': {'key': 'properties.publisherEmail', 'type': 'str'}, + 'publisher_name': {'key': 'properties.publisherName', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ApiManagementServiceSkuProperties'}, + 'identity': {'key': 'identity', 'type': 'ApiManagementServiceIdentity'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, tags=None, notification_sender_email: str=None, hostname_configurations=None, virtual_network_configuration=None, additional_locations=None, custom_properties=None, certificates=None, enable_client_certificate: bool=False, virtual_network_type="None", publisher_email: str=None, publisher_name: str=None, sku=None, identity=None, **kwargs) -> None: + super(ApiManagementServiceUpdateParameters, self).__init__(tags=tags, **kwargs) + self.notification_sender_email = notification_sender_email + self.provisioning_state = None + self.target_provisioning_state = None + self.created_at_utc = None + self.gateway_url = None + self.gateway_regional_url = None + self.portal_url = None + self.management_api_url = None + self.scm_url = None + self.hostname_configurations = hostname_configurations + self.public_ip_addresses = None + self.private_ip_addresses = None + self.virtual_network_configuration = virtual_network_configuration + self.additional_locations = additional_locations + self.custom_properties = custom_properties + self.certificates = certificates + self.enable_client_certificate = enable_client_certificate + self.virtual_network_type = virtual_network_type + self.publisher_email = publisher_email + self.publisher_name = publisher_name + self.sku = sku + self.identity = identity + self.etag = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract.py new file mode 100644 index 000000000000..4e04b6c68964 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ApiReleaseContract(Resource): + """ApiRelease details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param api_id: Identifier of the API the release belongs to. + :type api_id: str + :ivar created_date_time: The time the API was released. The date conforms + to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 + standard. + :vartype created_date_time: datetime + :ivar updated_date_time: The time the API release was updated. + :vartype updated_date_time: datetime + :param notes: Release Notes + :type notes: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'updated_date_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'api_id': {'key': 'properties.apiId', 'type': 'str'}, + 'created_date_time': {'key': 'properties.createdDateTime', 'type': 'iso-8601'}, + 'updated_date_time': {'key': 'properties.updatedDateTime', 'type': 'iso-8601'}, + 'notes': {'key': 'properties.notes', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiReleaseContract, self).__init__(**kwargs) + self.api_id = kwargs.get('api_id', None) + self.created_date_time = None + self.updated_date_time = None + self.notes = kwargs.get('notes', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_paged.py new file mode 100644 index 000000000000..f95ad2334f66 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ApiReleaseContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApiReleaseContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApiReleaseContract]'} + } + + def __init__(self, *args, **kwargs): + + super(ApiReleaseContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_py3.py new file mode 100644 index 000000000000..8792997dfc41 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_release_contract_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ApiReleaseContract(Resource): + """ApiRelease details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param api_id: Identifier of the API the release belongs to. + :type api_id: str + :ivar created_date_time: The time the API was released. The date conforms + to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 + standard. + :vartype created_date_time: datetime + :ivar updated_date_time: The time the API release was updated. + :vartype updated_date_time: datetime + :param notes: Release Notes + :type notes: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'updated_date_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'api_id': {'key': 'properties.apiId', 'type': 'str'}, + 'created_date_time': {'key': 'properties.createdDateTime', 'type': 'iso-8601'}, + 'updated_date_time': {'key': 'properties.updatedDateTime', 'type': 'iso-8601'}, + 'notes': {'key': 'properties.notes', 'type': 'str'}, + } + + def __init__(self, *, api_id: str=None, notes: str=None, **kwargs) -> None: + super(ApiReleaseContract, self).__init__(**kwargs) + self.api_id = api_id + self.created_date_time = None + self.updated_date_time = None + self.notes = notes diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract.py new file mode 100644 index 000000000000..8ee1788c315a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiRevisionContract(Model): + """Summary of revision metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar api_id: Identifier of the API Revision. + :vartype api_id: str + :ivar api_revision: Revision number of API. + :vartype api_revision: str + :ivar created_date_time: The time the API Revision was created. The date + conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the + ISO 8601 standard. + :vartype created_date_time: datetime + :ivar updated_date_time: The time the API Revision were updated. The date + conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the + ISO 8601 standard. + :vartype updated_date_time: datetime + :ivar description: Description of the API Revision. + :vartype description: str + :ivar private_url: Gateway URL for accessing the non-current API Revision. + :vartype private_url: str + :ivar is_online: Indicates if API revision is the current api revision. + :vartype is_online: bool + :ivar is_current: Indicates if API revision is accessible via the gateway. + :vartype is_current: bool + """ + + _validation = { + 'api_id': {'readonly': True}, + 'api_revision': {'readonly': True, 'max_length': 100, 'min_length': 1}, + 'created_date_time': {'readonly': True}, + 'updated_date_time': {'readonly': True}, + 'description': {'readonly': True, 'max_length': 256}, + 'private_url': {'readonly': True}, + 'is_online': {'readonly': True}, + 'is_current': {'readonly': True}, + } + + _attribute_map = { + 'api_id': {'key': 'apiId', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'updated_date_time': {'key': 'updatedDateTime', 'type': 'iso-8601'}, + 'description': {'key': 'description', 'type': 'str'}, + 'private_url': {'key': 'privateUrl', 'type': 'str'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ApiRevisionContract, self).__init__(**kwargs) + self.api_id = None + self.api_revision = None + self.created_date_time = None + self.updated_date_time = None + self.description = None + self.private_url = None + self.is_online = None + self.is_current = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_paged.py new file mode 100644 index 000000000000..1cc0fe483079 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ApiRevisionContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApiRevisionContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApiRevisionContract]'} + } + + def __init__(self, *args, **kwargs): + + super(ApiRevisionContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_py3.py new file mode 100644 index 000000000000..a3b4f9892094 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_contract_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiRevisionContract(Model): + """Summary of revision metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar api_id: Identifier of the API Revision. + :vartype api_id: str + :ivar api_revision: Revision number of API. + :vartype api_revision: str + :ivar created_date_time: The time the API Revision was created. The date + conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the + ISO 8601 standard. + :vartype created_date_time: datetime + :ivar updated_date_time: The time the API Revision were updated. The date + conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the + ISO 8601 standard. + :vartype updated_date_time: datetime + :ivar description: Description of the API Revision. + :vartype description: str + :ivar private_url: Gateway URL for accessing the non-current API Revision. + :vartype private_url: str + :ivar is_online: Indicates if API revision is the current api revision. + :vartype is_online: bool + :ivar is_current: Indicates if API revision is accessible via the gateway. + :vartype is_current: bool + """ + + _validation = { + 'api_id': {'readonly': True}, + 'api_revision': {'readonly': True, 'max_length': 100, 'min_length': 1}, + 'created_date_time': {'readonly': True}, + 'updated_date_time': {'readonly': True}, + 'description': {'readonly': True, 'max_length': 256}, + 'private_url': {'readonly': True}, + 'is_online': {'readonly': True}, + 'is_current': {'readonly': True}, + } + + _attribute_map = { + 'api_id': {'key': 'apiId', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'updated_date_time': {'key': 'updatedDateTime', 'type': 'iso-8601'}, + 'description': {'key': 'description', 'type': 'str'}, + 'private_url': {'key': 'privateUrl', 'type': 'str'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + } + + def __init__(self, **kwargs) -> None: + super(ApiRevisionContract, self).__init__(**kwargs) + self.api_id = None + self.api_revision = None + self.created_date_time = None + self.updated_date_time = None + self.description = None + self.private_url = None + self.is_online = None + self.is_current = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract.py new file mode 100644 index 000000000000..f134492b1db3 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiRevisionInfoContract(Model): + """Object used to create an API Revision or Version based on an existing API + Revision. + + :param source_api_id: Resource identifier of API to be used to create the + revision from. + :type source_api_id: str + :param api_version_name: Version identifier for the new API Version. + :type api_version_name: str + :param api_revision_description: Description of new API Revision. + :type api_revision_description: str + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + """ + + _validation = { + 'api_version_name': {'max_length': 100}, + 'api_revision_description': {'max_length': 256}, + } + + _attribute_map = { + 'source_api_id': {'key': 'sourceApiId', 'type': 'str'}, + 'api_version_name': {'key': 'apiVersionName', 'type': 'str'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_set': {'key': 'apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + } + + def __init__(self, **kwargs): + super(ApiRevisionInfoContract, self).__init__(**kwargs) + self.source_api_id = kwargs.get('source_api_id', None) + self.api_version_name = kwargs.get('api_version_name', None) + self.api_revision_description = kwargs.get('api_revision_description', None) + self.api_version_set = kwargs.get('api_version_set', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract_py3.py new file mode 100644 index 000000000000..7f2ccaed2b0e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_revision_info_contract_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiRevisionInfoContract(Model): + """Object used to create an API Revision or Version based on an existing API + Revision. + + :param source_api_id: Resource identifier of API to be used to create the + revision from. + :type source_api_id: str + :param api_version_name: Version identifier for the new API Version. + :type api_version_name: str + :param api_revision_description: Description of new API Revision. + :type api_revision_description: str + :param api_version_set: Version set details + :type api_version_set: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails + """ + + _validation = { + 'api_version_name': {'max_length': 100}, + 'api_revision_description': {'max_length': 256}, + } + + _attribute_map = { + 'source_api_id': {'key': 'sourceApiId', 'type': 'str'}, + 'api_version_name': {'key': 'apiVersionName', 'type': 'str'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_set': {'key': 'apiVersionSet', 'type': 'ApiVersionSetContractDetails'}, + } + + def __init__(self, *, source_api_id: str=None, api_version_name: str=None, api_revision_description: str=None, api_version_set=None, **kwargs) -> None: + super(ApiRevisionInfoContract, self).__init__(**kwargs) + self.source_api_id = source_api_id + self.api_version_name = api_version_name + self.api_revision_description = api_revision_description + self.api_version_set = api_version_set diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties.py new file mode 100644 index 000000000000..ea0e43b2d27b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties.py @@ -0,0 +1,108 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .api_entity_base_contract import ApiEntityBaseContract + + +class ApiTagResourceContractProperties(ApiEntityBaseContract): + """API contract properties for the Tag Resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param id: API identifier in the form /apis/{apiId}. + :type id: str + :param name: API name. + :type name: str + :param service_url: Absolute URL of the backend service implementing this + API. + :type service_url: str + :param path: Relative URL uniquely identifying this API and all of its + resource paths within the API Management service instance. It is appended + to the API endpoint base URL specified during the service instance + creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 1}, + 'path': {'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authentication_settings': {'key': 'authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'type', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'service_url': {'key': 'serviceUrl', 'type': 'str'}, + 'path': {'key': 'path', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[Protocol]'}, + } + + def __init__(self, **kwargs): + super(ApiTagResourceContractProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.service_url = kwargs.get('service_url', None) + self.path = kwargs.get('path', None) + self.protocols = kwargs.get('protocols', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties_py3.py new file mode 100644 index 000000000000..67cc11942a42 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_tag_resource_contract_properties_py3.py @@ -0,0 +1,108 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .api_entity_base_contract_py3 import ApiEntityBaseContract + + +class ApiTagResourceContractProperties(ApiEntityBaseContract): + """API contract properties for the Tag Resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param id: API identifier in the form /apis/{apiId}. + :type id: str + :param name: API name. + :type name: str + :param service_url: Absolute URL of the backend service implementing this + API. + :type service_url: str + :param path: Relative URL uniquely identifying this API and all of its + resource paths within the API Management service instance. It is appended + to the API endpoint base URL specified during the service instance + creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 1}, + 'path': {'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authentication_settings': {'key': 'authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'type', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'is_current': {'key': 'isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'service_url': {'key': 'serviceUrl', 'type': 'str'}, + 'path': {'key': 'path', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[Protocol]'}, + } + + def __init__(self, *, description: str=None, authentication_settings=None, subscription_key_parameter_names=None, api_type=None, api_revision: str=None, api_version: str=None, is_current: bool=None, api_revision_description: str=None, api_version_description: str=None, api_version_set_id: str=None, subscription_required: bool=None, id: str=None, name: str=None, service_url: str=None, path: str=None, protocols=None, **kwargs) -> None: + super(ApiTagResourceContractProperties, self).__init__(description=description, authentication_settings=authentication_settings, subscription_key_parameter_names=subscription_key_parameter_names, api_type=api_type, api_revision=api_revision, api_version=api_version, is_current=is_current, api_revision_description=api_revision_description, api_version_description=api_version_description, api_version_set_id=api_version_set_id, subscription_required=subscription_required, **kwargs) + self.id = id + self.name = name + self.service_url = service_url + self.path = path + self.protocols = protocols diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract.py new file mode 100644 index 000000000000..16538edb5451 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract.py @@ -0,0 +1,116 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiUpdateContract(Model): + """API update contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param display_name: API name. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. + :type service_url: str + :param path: Relative URL uniquely identifying this API and all of its + resource paths within the API Management service instance. It is appended + to the API endpoint base URL specified during the service instance + creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 1}, + 'path': {'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authentication_settings': {'key': 'properties.authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'properties.subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'properties.type', 'type': 'str'}, + 'api_revision': {'key': 'properties.apiRevision', 'type': 'str'}, + 'api_version': {'key': 'properties.apiVersion', 'type': 'str'}, + 'is_current': {'key': 'properties.isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'properties.isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'properties.apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'properties.apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'properties.apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'service_url': {'key': 'properties.serviceUrl', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'protocols': {'key': 'properties.protocols', 'type': '[Protocol]'}, + } + + def __init__(self, **kwargs): + super(ApiUpdateContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authentication_settings = kwargs.get('authentication_settings', None) + self.subscription_key_parameter_names = kwargs.get('subscription_key_parameter_names', None) + self.api_type = kwargs.get('api_type', None) + self.api_revision = kwargs.get('api_revision', None) + self.api_version = kwargs.get('api_version', None) + self.is_current = kwargs.get('is_current', None) + self.is_online = None + self.api_revision_description = kwargs.get('api_revision_description', None) + self.api_version_description = kwargs.get('api_version_description', None) + self.api_version_set_id = kwargs.get('api_version_set_id', None) + self.subscription_required = kwargs.get('subscription_required', None) + self.display_name = kwargs.get('display_name', None) + self.service_url = kwargs.get('service_url', None) + self.path = kwargs.get('path', None) + self.protocols = kwargs.get('protocols', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract_py3.py new file mode 100644 index 000000000000..c9c8736900a7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_update_contract_py3.py @@ -0,0 +1,116 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiUpdateContract(Model): + """API update contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param description: Description of the API. May include HTML formatting + tags. + :type description: str + :param authentication_settings: Collection of authentication settings + included into this API. + :type authentication_settings: + ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract + :param subscription_key_parameter_names: Protocols over which API is made + available. + :type subscription_key_parameter_names: + ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract + :param api_type: Type of API. Possible values include: 'http', 'soap' + :type api_type: str or ~azure.mgmt.apimanagement.models.ApiType + :param api_revision: Describes the Revision of the Api. If no value is + provided, default revision 1 is created + :type api_revision: str + :param api_version: Indicates the Version identifier of the API if the API + is versioned + :type api_version: str + :param is_current: Indicates if API revision is current api revision. + :type is_current: bool + :ivar is_online: Indicates if API revision is accessible via the gateway. + :vartype is_online: bool + :param api_revision_description: Description of the Api Revision. + :type api_revision_description: str + :param api_version_description: Description of the Api Version. + :type api_version_description: str + :param api_version_set_id: A resource identifier for the related + ApiVersionSet. + :type api_version_set_id: str + :param subscription_required: Specifies whether an API or Product + subscription is required for accessing the API. + :type subscription_required: bool + :param display_name: API name. + :type display_name: str + :param service_url: Absolute URL of the backend service implementing this + API. + :type service_url: str + :param path: Relative URL uniquely identifying this API and all of its + resource paths within the API Management service instance. It is appended + to the API endpoint base URL specified during the service instance + creation to form a public URL for this API. + :type path: str + :param protocols: Describes on which protocols the operations in this API + can be invoked. + :type protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] + """ + + _validation = { + 'api_revision': {'max_length': 100, 'min_length': 1}, + 'api_version': {'max_length': 100}, + 'is_online': {'readonly': True}, + 'api_revision_description': {'max_length': 256}, + 'api_version_description': {'max_length': 256}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'service_url': {'max_length': 2000, 'min_length': 1}, + 'path': {'max_length': 400, 'min_length': 0}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authentication_settings': {'key': 'properties.authenticationSettings', 'type': 'AuthenticationSettingsContract'}, + 'subscription_key_parameter_names': {'key': 'properties.subscriptionKeyParameterNames', 'type': 'SubscriptionKeyParameterNamesContract'}, + 'api_type': {'key': 'properties.type', 'type': 'str'}, + 'api_revision': {'key': 'properties.apiRevision', 'type': 'str'}, + 'api_version': {'key': 'properties.apiVersion', 'type': 'str'}, + 'is_current': {'key': 'properties.isCurrent', 'type': 'bool'}, + 'is_online': {'key': 'properties.isOnline', 'type': 'bool'}, + 'api_revision_description': {'key': 'properties.apiRevisionDescription', 'type': 'str'}, + 'api_version_description': {'key': 'properties.apiVersionDescription', 'type': 'str'}, + 'api_version_set_id': {'key': 'properties.apiVersionSetId', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'service_url': {'key': 'properties.serviceUrl', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'protocols': {'key': 'properties.protocols', 'type': '[Protocol]'}, + } + + def __init__(self, *, description: str=None, authentication_settings=None, subscription_key_parameter_names=None, api_type=None, api_revision: str=None, api_version: str=None, is_current: bool=None, api_revision_description: str=None, api_version_description: str=None, api_version_set_id: str=None, subscription_required: bool=None, display_name: str=None, service_url: str=None, path: str=None, protocols=None, **kwargs) -> None: + super(ApiUpdateContract, self).__init__(**kwargs) + self.description = description + self.authentication_settings = authentication_settings + self.subscription_key_parameter_names = subscription_key_parameter_names + self.api_type = api_type + self.api_revision = api_revision + self.api_version = api_version + self.is_current = is_current + self.is_online = None + self.api_revision_description = api_revision_description + self.api_version_description = api_version_description + self.api_version_set_id = api_version_set_id + self.subscription_required = subscription_required + self.display_name = display_name + self.service_url = service_url + self.path = path + self.protocols = protocols diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract.py new file mode 100644 index 000000000000..841221ab5ca4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ApiVersionSetContract(Resource): + """Api Version Set Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of API Version Set. + :type description: str + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + :param display_name: Required. Name of API Version Set + :type display_name: str + :param versioning_scheme: Required. An value that determines where the API + Version identifer will be located in a HTTP request. Possible values + include: 'Segment', 'Query', 'Header' + :type versioning_scheme: str or + ~azure.mgmt.apimanagement.models.VersioningScheme + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'version_query_name': {'max_length': 100, 'min_length': 1}, + 'version_header_name': {'max_length': 100, 'min_length': 1}, + 'display_name': {'required': True, 'max_length': 100, 'min_length': 1}, + 'versioning_scheme': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'version_query_name': {'key': 'properties.versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'properties.versionHeaderName', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'versioning_scheme': {'key': 'properties.versioningScheme', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiVersionSetContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.version_query_name = kwargs.get('version_query_name', None) + self.version_header_name = kwargs.get('version_header_name', None) + self.display_name = kwargs.get('display_name', None) + self.versioning_scheme = kwargs.get('versioning_scheme', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details.py new file mode 100644 index 000000000000..ca3eb9e811e4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiVersionSetContractDetails(Model): + """An API Version Set contains the common configuration for a set of API + Versions relating . + + :param id: Identifier for existing API Version Set. Omit this value to + create a new Version Set. + :type id: str + :param name: The display Name of the API Version Set. + :type name: str + :param description: Description of API Version Set. + :type description: str + :param versioning_scheme: An value that determines where the API Version + identifer will be located in a HTTP request. Possible values include: + 'Segment', 'Query', 'Header' + :type versioning_scheme: str or ~azure.mgmt.apimanagement.models.enum + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'versioning_scheme': {'key': 'versioningScheme', 'type': 'str'}, + 'version_query_name': {'key': 'versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'versionHeaderName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiVersionSetContractDetails, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.versioning_scheme = kwargs.get('versioning_scheme', None) + self.version_query_name = kwargs.get('version_query_name', None) + self.version_header_name = kwargs.get('version_header_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details_py3.py new file mode 100644 index 000000000000..9a340f5d4be8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_details_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiVersionSetContractDetails(Model): + """An API Version Set contains the common configuration for a set of API + Versions relating . + + :param id: Identifier for existing API Version Set. Omit this value to + create a new Version Set. + :type id: str + :param name: The display Name of the API Version Set. + :type name: str + :param description: Description of API Version Set. + :type description: str + :param versioning_scheme: An value that determines where the API Version + identifer will be located in a HTTP request. Possible values include: + 'Segment', 'Query', 'Header' + :type versioning_scheme: str or ~azure.mgmt.apimanagement.models.enum + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'versioning_scheme': {'key': 'versioningScheme', 'type': 'str'}, + 'version_query_name': {'key': 'versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'versionHeaderName', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, description: str=None, versioning_scheme=None, version_query_name: str=None, version_header_name: str=None, **kwargs) -> None: + super(ApiVersionSetContractDetails, self).__init__(**kwargs) + self.id = id + self.name = name + self.description = description + self.versioning_scheme = versioning_scheme + self.version_query_name = version_query_name + self.version_header_name = version_header_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_paged.py new file mode 100644 index 000000000000..cfe10ae6a136 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ApiVersionSetContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApiVersionSetContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApiVersionSetContract]'} + } + + def __init__(self, *args, **kwargs): + + super(ApiVersionSetContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_py3.py new file mode 100644 index 000000000000..151e5bec6bf8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_contract_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ApiVersionSetContract(Resource): + """Api Version Set Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of API Version Set. + :type description: str + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + :param display_name: Required. Name of API Version Set + :type display_name: str + :param versioning_scheme: Required. An value that determines where the API + Version identifer will be located in a HTTP request. Possible values + include: 'Segment', 'Query', 'Header' + :type versioning_scheme: str or + ~azure.mgmt.apimanagement.models.VersioningScheme + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'version_query_name': {'max_length': 100, 'min_length': 1}, + 'version_header_name': {'max_length': 100, 'min_length': 1}, + 'display_name': {'required': True, 'max_length': 100, 'min_length': 1}, + 'versioning_scheme': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'version_query_name': {'key': 'properties.versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'properties.versionHeaderName', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'versioning_scheme': {'key': 'properties.versioningScheme', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, versioning_scheme, description: str=None, version_query_name: str=None, version_header_name: str=None, **kwargs) -> None: + super(ApiVersionSetContract, self).__init__(**kwargs) + self.description = description + self.version_query_name = version_query_name + self.version_header_name = version_header_name + self.display_name = display_name + self.versioning_scheme = versioning_scheme diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base.py new file mode 100644 index 000000000000..c939168cc5e8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiVersionSetEntityBase(Model): + """Api Version set base parameters. + + :param description: Description of API Version Set. + :type description: str + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + """ + + _validation = { + 'version_query_name': {'max_length': 100, 'min_length': 1}, + 'version_header_name': {'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'version_query_name': {'key': 'versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'versionHeaderName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiVersionSetEntityBase, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.version_query_name = kwargs.get('version_query_name', None) + self.version_header_name = kwargs.get('version_header_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base_py3.py new file mode 100644 index 000000000000..83ff82631423 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_entity_base_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiVersionSetEntityBase(Model): + """Api Version set base parameters. + + :param description: Description of API Version Set. + :type description: str + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + """ + + _validation = { + 'version_query_name': {'max_length': 100, 'min_length': 1}, + 'version_header_name': {'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'version_query_name': {'key': 'versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'versionHeaderName', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, version_query_name: str=None, version_header_name: str=None, **kwargs) -> None: + super(ApiVersionSetEntityBase, self).__init__(**kwargs) + self.description = description + self.version_query_name = version_query_name + self.version_header_name = version_header_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters.py new file mode 100644 index 000000000000..0132a009a6e9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiVersionSetUpdateParameters(Model): + """Parameters to update or create an Api Version Set Contract. + + :param description: Description of API Version Set. + :type description: str + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + :param display_name: Name of API Version Set + :type display_name: str + :param versioning_scheme: An value that determines where the API Version + identifer will be located in a HTTP request. Possible values include: + 'Segment', 'Query', 'Header' + :type versioning_scheme: str or + ~azure.mgmt.apimanagement.models.VersioningScheme + """ + + _validation = { + 'version_query_name': {'max_length': 100, 'min_length': 1}, + 'version_header_name': {'max_length': 100, 'min_length': 1}, + 'display_name': {'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'version_query_name': {'key': 'properties.versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'properties.versionHeaderName', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'versioning_scheme': {'key': 'properties.versioningScheme', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiVersionSetUpdateParameters, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.version_query_name = kwargs.get('version_query_name', None) + self.version_header_name = kwargs.get('version_header_name', None) + self.display_name = kwargs.get('display_name', None) + self.versioning_scheme = kwargs.get('versioning_scheme', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters_py3.py new file mode 100644 index 000000000000..1a8cce08c012 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/api_version_set_update_parameters_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiVersionSetUpdateParameters(Model): + """Parameters to update or create an Api Version Set Contract. + + :param description: Description of API Version Set. + :type description: str + :param version_query_name: Name of query parameter that indicates the API + Version if versioningScheme is set to `query`. + :type version_query_name: str + :param version_header_name: Name of HTTP header parameter that indicates + the API Version if versioningScheme is set to `header`. + :type version_header_name: str + :param display_name: Name of API Version Set + :type display_name: str + :param versioning_scheme: An value that determines where the API Version + identifer will be located in a HTTP request. Possible values include: + 'Segment', 'Query', 'Header' + :type versioning_scheme: str or + ~azure.mgmt.apimanagement.models.VersioningScheme + """ + + _validation = { + 'version_query_name': {'max_length': 100, 'min_length': 1}, + 'version_header_name': {'max_length': 100, 'min_length': 1}, + 'display_name': {'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'version_query_name': {'key': 'properties.versionQueryName', 'type': 'str'}, + 'version_header_name': {'key': 'properties.versionHeaderName', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'versioning_scheme': {'key': 'properties.versioningScheme', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, version_query_name: str=None, version_header_name: str=None, display_name: str=None, versioning_scheme=None, **kwargs) -> None: + super(ApiVersionSetUpdateParameters, self).__init__(**kwargs) + self.description = description + self.version_query_name = version_query_name + self.version_header_name = version_header_name + self.display_name = display_name + self.versioning_scheme = versioning_scheme diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource.py new file mode 100644 index 000000000000..5812e245eb0d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApimResource(Model): + """The Resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource is set to + Microsoft.ApiManagement. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(ApimResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource_py3.py new file mode 100644 index 000000000000..b63a2a6ed74c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/apim_resource_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApimResource(Model): + """The Resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource is set to + Microsoft.ApiManagement. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(ApimResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.tags = tags diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract.py new file mode 100644 index 000000000000..b4eaf5654446 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthenticationSettingsContract(Model): + """API Authentication Settings. + + :param o_auth2: OAuth2 Authentication settings + :type o_auth2: + ~azure.mgmt.apimanagement.models.OAuth2AuthenticationSettingsContract + :param openid: OpenID Connect Authentication Settings + :type openid: + ~azure.mgmt.apimanagement.models.OpenIdAuthenticationSettingsContract + :param subscription_key_required: Specifies whether subscription key is + required during call to this API, true - API is included into closed + products only, false - API is included into open products alone, null - + there is a mix of products. + :type subscription_key_required: bool + """ + + _attribute_map = { + 'o_auth2': {'key': 'oAuth2', 'type': 'OAuth2AuthenticationSettingsContract'}, + 'openid': {'key': 'openid', 'type': 'OpenIdAuthenticationSettingsContract'}, + 'subscription_key_required': {'key': 'subscriptionKeyRequired', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AuthenticationSettingsContract, self).__init__(**kwargs) + self.o_auth2 = kwargs.get('o_auth2', None) + self.openid = kwargs.get('openid', None) + self.subscription_key_required = kwargs.get('subscription_key_required', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract_py3.py new file mode 100644 index 000000000000..725dc936e94f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authentication_settings_contract_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthenticationSettingsContract(Model): + """API Authentication Settings. + + :param o_auth2: OAuth2 Authentication settings + :type o_auth2: + ~azure.mgmt.apimanagement.models.OAuth2AuthenticationSettingsContract + :param openid: OpenID Connect Authentication Settings + :type openid: + ~azure.mgmt.apimanagement.models.OpenIdAuthenticationSettingsContract + :param subscription_key_required: Specifies whether subscription key is + required during call to this API, true - API is included into closed + products only, false - API is included into open products alone, null - + there is a mix of products. + :type subscription_key_required: bool + """ + + _attribute_map = { + 'o_auth2': {'key': 'oAuth2', 'type': 'OAuth2AuthenticationSettingsContract'}, + 'openid': {'key': 'openid', 'type': 'OpenIdAuthenticationSettingsContract'}, + 'subscription_key_required': {'key': 'subscriptionKeyRequired', 'type': 'bool'}, + } + + def __init__(self, *, o_auth2=None, openid=None, subscription_key_required: bool=None, **kwargs) -> None: + super(AuthenticationSettingsContract, self).__init__(**kwargs) + self.o_auth2 = o_auth2 + self.openid = openid + self.subscription_key_required = subscription_key_required diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract.py new file mode 100644 index 000000000000..9a50d1d1ee37 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract.py @@ -0,0 +1,142 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AuthorizationServerContract(Resource): + """External OAuth authorization server settings. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the authorization server. Can contain + HTML formatting tags. + :type description: str + :param authorization_methods: HTTP verbs supported by the authorization + endpoint. GET must be always present. POST is optional. + :type authorization_methods: list[str or + ~azure.mgmt.apimanagement.models.AuthorizationMethod] + :param client_authentication_method: Method of authentication supported by + the token endpoint of this authorization server. Possible values are Basic + and/or Body. When Body is specified, client credentials and other + parameters are passed within the request body in the + application/x-www-form-urlencoded format. + :type client_authentication_method: list[str or + ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] + :param token_body_parameters: Additional parameters required by the token + endpoint of this authorization server represented as an array of JSON + objects with name and value string properties, i.e. {"name" : "name + value", "value": "a value"}. + :type token_body_parameters: + list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] + :param token_endpoint: OAuth token endpoint. Contains absolute URI to + entity being referenced. + :type token_endpoint: str + :param support_state: If true, authorization server will include state + parameter from the authorization request to its response. Client may use + state parameter to raise protocol security. + :type support_state: bool + :param default_scope: Access token scope that is going to be requested by + default. Can be overridden at the API level. Should be provided in the + form of a string containing space-delimited values. + :type default_scope: str + :param bearer_token_sending_methods: Specifies the mechanism by which + access token is passed to the API. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] + :param client_secret: Client or app secret registered with this + authorization server. + :type client_secret: str + :param resource_owner_username: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner username. + :type resource_owner_username: str + :param resource_owner_password: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner password. + :type resource_owner_password: str + :param display_name: Required. User-friendly authorization server name. + :type display_name: str + :param client_registration_endpoint: Required. Optional reference to a + page where client or app registration for this authorization server is + performed. Contains absolute URL to entity being referenced. + :type client_registration_endpoint: str + :param authorization_endpoint: Required. OAuth authorization endpoint. See + http://tools.ietf.org/html/rfc6749#section-3.2. + :type authorization_endpoint: str + :param grant_types: Required. Form of an authorization grant, which the + client uses to request the access token. + :type grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] + :param client_id: Required. Client or app id registered with this + authorization server. + :type client_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 50, 'min_length': 1}, + 'client_registration_endpoint': {'required': True}, + 'authorization_endpoint': {'required': True}, + 'grant_types': {'required': True}, + 'client_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authorization_methods': {'key': 'properties.authorizationMethods', 'type': '[AuthorizationMethod]'}, + 'client_authentication_method': {'key': 'properties.clientAuthenticationMethod', 'type': '[str]'}, + 'token_body_parameters': {'key': 'properties.tokenBodyParameters', 'type': '[TokenBodyParameterContract]'}, + 'token_endpoint': {'key': 'properties.tokenEndpoint', 'type': 'str'}, + 'support_state': {'key': 'properties.supportState', 'type': 'bool'}, + 'default_scope': {'key': 'properties.defaultScope', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'properties.bearerTokenSendingMethods', 'type': '[str]'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + 'resource_owner_username': {'key': 'properties.resourceOwnerUsername', 'type': 'str'}, + 'resource_owner_password': {'key': 'properties.resourceOwnerPassword', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'client_registration_endpoint': {'key': 'properties.clientRegistrationEndpoint', 'type': 'str'}, + 'authorization_endpoint': {'key': 'properties.authorizationEndpoint', 'type': 'str'}, + 'grant_types': {'key': 'properties.grantTypes', 'type': '[str]'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AuthorizationServerContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authorization_methods = kwargs.get('authorization_methods', None) + self.client_authentication_method = kwargs.get('client_authentication_method', None) + self.token_body_parameters = kwargs.get('token_body_parameters', None) + self.token_endpoint = kwargs.get('token_endpoint', None) + self.support_state = kwargs.get('support_state', None) + self.default_scope = kwargs.get('default_scope', None) + self.bearer_token_sending_methods = kwargs.get('bearer_token_sending_methods', None) + self.client_secret = kwargs.get('client_secret', None) + self.resource_owner_username = kwargs.get('resource_owner_username', None) + self.resource_owner_password = kwargs.get('resource_owner_password', None) + self.display_name = kwargs.get('display_name', None) + self.client_registration_endpoint = kwargs.get('client_registration_endpoint', None) + self.authorization_endpoint = kwargs.get('authorization_endpoint', None) + self.grant_types = kwargs.get('grant_types', None) + self.client_id = kwargs.get('client_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties.py new file mode 100644 index 000000000000..4b5b27bab20c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthorizationServerContractBaseProperties(Model): + """External OAuth authorization server Update settings contract. + + :param description: Description of the authorization server. Can contain + HTML formatting tags. + :type description: str + :param authorization_methods: HTTP verbs supported by the authorization + endpoint. GET must be always present. POST is optional. + :type authorization_methods: list[str or + ~azure.mgmt.apimanagement.models.AuthorizationMethod] + :param client_authentication_method: Method of authentication supported by + the token endpoint of this authorization server. Possible values are Basic + and/or Body. When Body is specified, client credentials and other + parameters are passed within the request body in the + application/x-www-form-urlencoded format. + :type client_authentication_method: list[str or + ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] + :param token_body_parameters: Additional parameters required by the token + endpoint of this authorization server represented as an array of JSON + objects with name and value string properties, i.e. {"name" : "name + value", "value": "a value"}. + :type token_body_parameters: + list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] + :param token_endpoint: OAuth token endpoint. Contains absolute URI to + entity being referenced. + :type token_endpoint: str + :param support_state: If true, authorization server will include state + parameter from the authorization request to its response. Client may use + state parameter to raise protocol security. + :type support_state: bool + :param default_scope: Access token scope that is going to be requested by + default. Can be overridden at the API level. Should be provided in the + form of a string containing space-delimited values. + :type default_scope: str + :param bearer_token_sending_methods: Specifies the mechanism by which + access token is passed to the API. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] + :param client_secret: Client or app secret registered with this + authorization server. + :type client_secret: str + :param resource_owner_username: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner username. + :type resource_owner_username: str + :param resource_owner_password: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner password. + :type resource_owner_password: str + """ + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authorization_methods': {'key': 'authorizationMethods', 'type': '[AuthorizationMethod]'}, + 'client_authentication_method': {'key': 'clientAuthenticationMethod', 'type': '[str]'}, + 'token_body_parameters': {'key': 'tokenBodyParameters', 'type': '[TokenBodyParameterContract]'}, + 'token_endpoint': {'key': 'tokenEndpoint', 'type': 'str'}, + 'support_state': {'key': 'supportState', 'type': 'bool'}, + 'default_scope': {'key': 'defaultScope', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'bearerTokenSendingMethods', 'type': '[str]'}, + 'client_secret': {'key': 'clientSecret', 'type': 'str'}, + 'resource_owner_username': {'key': 'resourceOwnerUsername', 'type': 'str'}, + 'resource_owner_password': {'key': 'resourceOwnerPassword', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AuthorizationServerContractBaseProperties, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authorization_methods = kwargs.get('authorization_methods', None) + self.client_authentication_method = kwargs.get('client_authentication_method', None) + self.token_body_parameters = kwargs.get('token_body_parameters', None) + self.token_endpoint = kwargs.get('token_endpoint', None) + self.support_state = kwargs.get('support_state', None) + self.default_scope = kwargs.get('default_scope', None) + self.bearer_token_sending_methods = kwargs.get('bearer_token_sending_methods', None) + self.client_secret = kwargs.get('client_secret', None) + self.resource_owner_username = kwargs.get('resource_owner_username', None) + self.resource_owner_password = kwargs.get('resource_owner_password', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties_py3.py new file mode 100644 index 000000000000..3d18e7cd3695 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_base_properties_py3.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthorizationServerContractBaseProperties(Model): + """External OAuth authorization server Update settings contract. + + :param description: Description of the authorization server. Can contain + HTML formatting tags. + :type description: str + :param authorization_methods: HTTP verbs supported by the authorization + endpoint. GET must be always present. POST is optional. + :type authorization_methods: list[str or + ~azure.mgmt.apimanagement.models.AuthorizationMethod] + :param client_authentication_method: Method of authentication supported by + the token endpoint of this authorization server. Possible values are Basic + and/or Body. When Body is specified, client credentials and other + parameters are passed within the request body in the + application/x-www-form-urlencoded format. + :type client_authentication_method: list[str or + ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] + :param token_body_parameters: Additional parameters required by the token + endpoint of this authorization server represented as an array of JSON + objects with name and value string properties, i.e. {"name" : "name + value", "value": "a value"}. + :type token_body_parameters: + list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] + :param token_endpoint: OAuth token endpoint. Contains absolute URI to + entity being referenced. + :type token_endpoint: str + :param support_state: If true, authorization server will include state + parameter from the authorization request to its response. Client may use + state parameter to raise protocol security. + :type support_state: bool + :param default_scope: Access token scope that is going to be requested by + default. Can be overridden at the API level. Should be provided in the + form of a string containing space-delimited values. + :type default_scope: str + :param bearer_token_sending_methods: Specifies the mechanism by which + access token is passed to the API. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] + :param client_secret: Client or app secret registered with this + authorization server. + :type client_secret: str + :param resource_owner_username: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner username. + :type resource_owner_username: str + :param resource_owner_password: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner password. + :type resource_owner_password: str + """ + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'authorization_methods': {'key': 'authorizationMethods', 'type': '[AuthorizationMethod]'}, + 'client_authentication_method': {'key': 'clientAuthenticationMethod', 'type': '[str]'}, + 'token_body_parameters': {'key': 'tokenBodyParameters', 'type': '[TokenBodyParameterContract]'}, + 'token_endpoint': {'key': 'tokenEndpoint', 'type': 'str'}, + 'support_state': {'key': 'supportState', 'type': 'bool'}, + 'default_scope': {'key': 'defaultScope', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'bearerTokenSendingMethods', 'type': '[str]'}, + 'client_secret': {'key': 'clientSecret', 'type': 'str'}, + 'resource_owner_username': {'key': 'resourceOwnerUsername', 'type': 'str'}, + 'resource_owner_password': {'key': 'resourceOwnerPassword', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, authorization_methods=None, client_authentication_method=None, token_body_parameters=None, token_endpoint: str=None, support_state: bool=None, default_scope: str=None, bearer_token_sending_methods=None, client_secret: str=None, resource_owner_username: str=None, resource_owner_password: str=None, **kwargs) -> None: + super(AuthorizationServerContractBaseProperties, self).__init__(**kwargs) + self.description = description + self.authorization_methods = authorization_methods + self.client_authentication_method = client_authentication_method + self.token_body_parameters = token_body_parameters + self.token_endpoint = token_endpoint + self.support_state = support_state + self.default_scope = default_scope + self.bearer_token_sending_methods = bearer_token_sending_methods + self.client_secret = client_secret + self.resource_owner_username = resource_owner_username + self.resource_owner_password = resource_owner_password diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_paged.py new file mode 100644 index 000000000000..471b4f0192d5 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class AuthorizationServerContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`AuthorizationServerContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AuthorizationServerContract]'} + } + + def __init__(self, *args, **kwargs): + + super(AuthorizationServerContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_py3.py new file mode 100644 index 000000000000..a8ccc68ee9ca --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_contract_py3.py @@ -0,0 +1,142 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AuthorizationServerContract(Resource): + """External OAuth authorization server settings. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the authorization server. Can contain + HTML formatting tags. + :type description: str + :param authorization_methods: HTTP verbs supported by the authorization + endpoint. GET must be always present. POST is optional. + :type authorization_methods: list[str or + ~azure.mgmt.apimanagement.models.AuthorizationMethod] + :param client_authentication_method: Method of authentication supported by + the token endpoint of this authorization server. Possible values are Basic + and/or Body. When Body is specified, client credentials and other + parameters are passed within the request body in the + application/x-www-form-urlencoded format. + :type client_authentication_method: list[str or + ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] + :param token_body_parameters: Additional parameters required by the token + endpoint of this authorization server represented as an array of JSON + objects with name and value string properties, i.e. {"name" : "name + value", "value": "a value"}. + :type token_body_parameters: + list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] + :param token_endpoint: OAuth token endpoint. Contains absolute URI to + entity being referenced. + :type token_endpoint: str + :param support_state: If true, authorization server will include state + parameter from the authorization request to its response. Client may use + state parameter to raise protocol security. + :type support_state: bool + :param default_scope: Access token scope that is going to be requested by + default. Can be overridden at the API level. Should be provided in the + form of a string containing space-delimited values. + :type default_scope: str + :param bearer_token_sending_methods: Specifies the mechanism by which + access token is passed to the API. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] + :param client_secret: Client or app secret registered with this + authorization server. + :type client_secret: str + :param resource_owner_username: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner username. + :type resource_owner_username: str + :param resource_owner_password: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner password. + :type resource_owner_password: str + :param display_name: Required. User-friendly authorization server name. + :type display_name: str + :param client_registration_endpoint: Required. Optional reference to a + page where client or app registration for this authorization server is + performed. Contains absolute URL to entity being referenced. + :type client_registration_endpoint: str + :param authorization_endpoint: Required. OAuth authorization endpoint. See + http://tools.ietf.org/html/rfc6749#section-3.2. + :type authorization_endpoint: str + :param grant_types: Required. Form of an authorization grant, which the + client uses to request the access token. + :type grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] + :param client_id: Required. Client or app id registered with this + authorization server. + :type client_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 50, 'min_length': 1}, + 'client_registration_endpoint': {'required': True}, + 'authorization_endpoint': {'required': True}, + 'grant_types': {'required': True}, + 'client_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authorization_methods': {'key': 'properties.authorizationMethods', 'type': '[AuthorizationMethod]'}, + 'client_authentication_method': {'key': 'properties.clientAuthenticationMethod', 'type': '[str]'}, + 'token_body_parameters': {'key': 'properties.tokenBodyParameters', 'type': '[TokenBodyParameterContract]'}, + 'token_endpoint': {'key': 'properties.tokenEndpoint', 'type': 'str'}, + 'support_state': {'key': 'properties.supportState', 'type': 'bool'}, + 'default_scope': {'key': 'properties.defaultScope', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'properties.bearerTokenSendingMethods', 'type': '[str]'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + 'resource_owner_username': {'key': 'properties.resourceOwnerUsername', 'type': 'str'}, + 'resource_owner_password': {'key': 'properties.resourceOwnerPassword', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'client_registration_endpoint': {'key': 'properties.clientRegistrationEndpoint', 'type': 'str'}, + 'authorization_endpoint': {'key': 'properties.authorizationEndpoint', 'type': 'str'}, + 'grant_types': {'key': 'properties.grantTypes', 'type': '[str]'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, client_registration_endpoint: str, authorization_endpoint: str, grant_types, client_id: str, description: str=None, authorization_methods=None, client_authentication_method=None, token_body_parameters=None, token_endpoint: str=None, support_state: bool=None, default_scope: str=None, bearer_token_sending_methods=None, client_secret: str=None, resource_owner_username: str=None, resource_owner_password: str=None, **kwargs) -> None: + super(AuthorizationServerContract, self).__init__(**kwargs) + self.description = description + self.authorization_methods = authorization_methods + self.client_authentication_method = client_authentication_method + self.token_body_parameters = token_body_parameters + self.token_endpoint = token_endpoint + self.support_state = support_state + self.default_scope = default_scope + self.bearer_token_sending_methods = bearer_token_sending_methods + self.client_secret = client_secret + self.resource_owner_username = resource_owner_username + self.resource_owner_password = resource_owner_password + self.display_name = display_name + self.client_registration_endpoint = client_registration_endpoint + self.authorization_endpoint = authorization_endpoint + self.grant_types = grant_types + self.client_id = client_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract.py new file mode 100644 index 000000000000..0e7b3a542afe --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract.py @@ -0,0 +1,136 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AuthorizationServerUpdateContract(Resource): + """External OAuth authorization server settings. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the authorization server. Can contain + HTML formatting tags. + :type description: str + :param authorization_methods: HTTP verbs supported by the authorization + endpoint. GET must be always present. POST is optional. + :type authorization_methods: list[str or + ~azure.mgmt.apimanagement.models.AuthorizationMethod] + :param client_authentication_method: Method of authentication supported by + the token endpoint of this authorization server. Possible values are Basic + and/or Body. When Body is specified, client credentials and other + parameters are passed within the request body in the + application/x-www-form-urlencoded format. + :type client_authentication_method: list[str or + ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] + :param token_body_parameters: Additional parameters required by the token + endpoint of this authorization server represented as an array of JSON + objects with name and value string properties, i.e. {"name" : "name + value", "value": "a value"}. + :type token_body_parameters: + list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] + :param token_endpoint: OAuth token endpoint. Contains absolute URI to + entity being referenced. + :type token_endpoint: str + :param support_state: If true, authorization server will include state + parameter from the authorization request to its response. Client may use + state parameter to raise protocol security. + :type support_state: bool + :param default_scope: Access token scope that is going to be requested by + default. Can be overridden at the API level. Should be provided in the + form of a string containing space-delimited values. + :type default_scope: str + :param bearer_token_sending_methods: Specifies the mechanism by which + access token is passed to the API. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] + :param client_secret: Client or app secret registered with this + authorization server. + :type client_secret: str + :param resource_owner_username: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner username. + :type resource_owner_username: str + :param resource_owner_password: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner password. + :type resource_owner_password: str + :param display_name: User-friendly authorization server name. + :type display_name: str + :param client_registration_endpoint: Optional reference to a page where + client or app registration for this authorization server is performed. + Contains absolute URL to entity being referenced. + :type client_registration_endpoint: str + :param authorization_endpoint: OAuth authorization endpoint. See + http://tools.ietf.org/html/rfc6749#section-3.2. + :type authorization_endpoint: str + :param grant_types: Form of an authorization grant, which the client uses + to request the access token. + :type grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] + :param client_id: Client or app id registered with this authorization + server. + :type client_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'max_length': 50, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authorization_methods': {'key': 'properties.authorizationMethods', 'type': '[AuthorizationMethod]'}, + 'client_authentication_method': {'key': 'properties.clientAuthenticationMethod', 'type': '[str]'}, + 'token_body_parameters': {'key': 'properties.tokenBodyParameters', 'type': '[TokenBodyParameterContract]'}, + 'token_endpoint': {'key': 'properties.tokenEndpoint', 'type': 'str'}, + 'support_state': {'key': 'properties.supportState', 'type': 'bool'}, + 'default_scope': {'key': 'properties.defaultScope', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'properties.bearerTokenSendingMethods', 'type': '[str]'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + 'resource_owner_username': {'key': 'properties.resourceOwnerUsername', 'type': 'str'}, + 'resource_owner_password': {'key': 'properties.resourceOwnerPassword', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'client_registration_endpoint': {'key': 'properties.clientRegistrationEndpoint', 'type': 'str'}, + 'authorization_endpoint': {'key': 'properties.authorizationEndpoint', 'type': 'str'}, + 'grant_types': {'key': 'properties.grantTypes', 'type': '[str]'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AuthorizationServerUpdateContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.authorization_methods = kwargs.get('authorization_methods', None) + self.client_authentication_method = kwargs.get('client_authentication_method', None) + self.token_body_parameters = kwargs.get('token_body_parameters', None) + self.token_endpoint = kwargs.get('token_endpoint', None) + self.support_state = kwargs.get('support_state', None) + self.default_scope = kwargs.get('default_scope', None) + self.bearer_token_sending_methods = kwargs.get('bearer_token_sending_methods', None) + self.client_secret = kwargs.get('client_secret', None) + self.resource_owner_username = kwargs.get('resource_owner_username', None) + self.resource_owner_password = kwargs.get('resource_owner_password', None) + self.display_name = kwargs.get('display_name', None) + self.client_registration_endpoint = kwargs.get('client_registration_endpoint', None) + self.authorization_endpoint = kwargs.get('authorization_endpoint', None) + self.grant_types = kwargs.get('grant_types', None) + self.client_id = kwargs.get('client_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract_py3.py new file mode 100644 index 000000000000..d6b6e2357000 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/authorization_server_update_contract_py3.py @@ -0,0 +1,136 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AuthorizationServerUpdateContract(Resource): + """External OAuth authorization server settings. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the authorization server. Can contain + HTML formatting tags. + :type description: str + :param authorization_methods: HTTP verbs supported by the authorization + endpoint. GET must be always present. POST is optional. + :type authorization_methods: list[str or + ~azure.mgmt.apimanagement.models.AuthorizationMethod] + :param client_authentication_method: Method of authentication supported by + the token endpoint of this authorization server. Possible values are Basic + and/or Body. When Body is specified, client credentials and other + parameters are passed within the request body in the + application/x-www-form-urlencoded format. + :type client_authentication_method: list[str or + ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] + :param token_body_parameters: Additional parameters required by the token + endpoint of this authorization server represented as an array of JSON + objects with name and value string properties, i.e. {"name" : "name + value", "value": "a value"}. + :type token_body_parameters: + list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] + :param token_endpoint: OAuth token endpoint. Contains absolute URI to + entity being referenced. + :type token_endpoint: str + :param support_state: If true, authorization server will include state + parameter from the authorization request to its response. Client may use + state parameter to raise protocol security. + :type support_state: bool + :param default_scope: Access token scope that is going to be requested by + default. Can be overridden at the API level. Should be provided in the + form of a string containing space-delimited values. + :type default_scope: str + :param bearer_token_sending_methods: Specifies the mechanism by which + access token is passed to the API. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] + :param client_secret: Client or app secret registered with this + authorization server. + :type client_secret: str + :param resource_owner_username: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner username. + :type resource_owner_username: str + :param resource_owner_password: Can be optionally specified when resource + owner password grant type is supported by this authorization server. + Default resource owner password. + :type resource_owner_password: str + :param display_name: User-friendly authorization server name. + :type display_name: str + :param client_registration_endpoint: Optional reference to a page where + client or app registration for this authorization server is performed. + Contains absolute URL to entity being referenced. + :type client_registration_endpoint: str + :param authorization_endpoint: OAuth authorization endpoint. See + http://tools.ietf.org/html/rfc6749#section-3.2. + :type authorization_endpoint: str + :param grant_types: Form of an authorization grant, which the client uses + to request the access token. + :type grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] + :param client_id: Client or app id registered with this authorization + server. + :type client_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'max_length': 50, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'authorization_methods': {'key': 'properties.authorizationMethods', 'type': '[AuthorizationMethod]'}, + 'client_authentication_method': {'key': 'properties.clientAuthenticationMethod', 'type': '[str]'}, + 'token_body_parameters': {'key': 'properties.tokenBodyParameters', 'type': '[TokenBodyParameterContract]'}, + 'token_endpoint': {'key': 'properties.tokenEndpoint', 'type': 'str'}, + 'support_state': {'key': 'properties.supportState', 'type': 'bool'}, + 'default_scope': {'key': 'properties.defaultScope', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'properties.bearerTokenSendingMethods', 'type': '[str]'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + 'resource_owner_username': {'key': 'properties.resourceOwnerUsername', 'type': 'str'}, + 'resource_owner_password': {'key': 'properties.resourceOwnerPassword', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'client_registration_endpoint': {'key': 'properties.clientRegistrationEndpoint', 'type': 'str'}, + 'authorization_endpoint': {'key': 'properties.authorizationEndpoint', 'type': 'str'}, + 'grant_types': {'key': 'properties.grantTypes', 'type': '[str]'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, authorization_methods=None, client_authentication_method=None, token_body_parameters=None, token_endpoint: str=None, support_state: bool=None, default_scope: str=None, bearer_token_sending_methods=None, client_secret: str=None, resource_owner_username: str=None, resource_owner_password: str=None, display_name: str=None, client_registration_endpoint: str=None, authorization_endpoint: str=None, grant_types=None, client_id: str=None, **kwargs) -> None: + super(AuthorizationServerUpdateContract, self).__init__(**kwargs) + self.description = description + self.authorization_methods = authorization_methods + self.client_authentication_method = client_authentication_method + self.token_body_parameters = token_body_parameters + self.token_endpoint = token_endpoint + self.support_state = support_state + self.default_scope = default_scope + self.bearer_token_sending_methods = bearer_token_sending_methods + self.client_secret = client_secret + self.resource_owner_username = resource_owner_username + self.resource_owner_password = resource_owner_password + self.display_name = display_name + self.client_registration_endpoint = client_registration_endpoint + self.authorization_endpoint = authorization_endpoint + self.grant_types = grant_types + self.client_id = client_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials.py new file mode 100644 index 000000000000..f579daecff01 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendAuthorizationHeaderCredentials(Model): + """Authorization header information. + + All required parameters must be populated in order to send to Azure. + + :param scheme: Required. Authentication Scheme name. + :type scheme: str + :param parameter: Required. Authentication Parameter value. + :type parameter: str + """ + + _validation = { + 'scheme': {'required': True, 'max_length': 100, 'min_length': 1}, + 'parameter': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'scheme': {'key': 'scheme', 'type': 'str'}, + 'parameter': {'key': 'parameter', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendAuthorizationHeaderCredentials, self).__init__(**kwargs) + self.scheme = kwargs.get('scheme', None) + self.parameter = kwargs.get('parameter', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials_py3.py new file mode 100644 index 000000000000..9118b95378b7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_authorization_header_credentials_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendAuthorizationHeaderCredentials(Model): + """Authorization header information. + + All required parameters must be populated in order to send to Azure. + + :param scheme: Required. Authentication Scheme name. + :type scheme: str + :param parameter: Required. Authentication Parameter value. + :type parameter: str + """ + + _validation = { + 'scheme': {'required': True, 'max_length': 100, 'min_length': 1}, + 'parameter': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'scheme': {'key': 'scheme', 'type': 'str'}, + 'parameter': {'key': 'parameter', 'type': 'str'}, + } + + def __init__(self, *, scheme: str, parameter: str, **kwargs) -> None: + super(BackendAuthorizationHeaderCredentials, self).__init__(**kwargs) + self.scheme = scheme + self.parameter = parameter diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters.py new file mode 100644 index 000000000000..8a1440dc943b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendBaseParameters(Model): + """Backend entity base Parameter set. + + :param title: Backend Title. + :type title: str + :param description: Backend Description. + :type description: str + :param resource_id: Management Uri of the Resource in External System. + This url can be the Arm Resource Id of Logic Apps, Function Apps or Api + Apps. + :type resource_id: str + :param properties: Backend Properties contract + :type properties: ~azure.mgmt.apimanagement.models.BackendProperties + :param credentials: Backend Credentials Contract Properties + :type credentials: + ~azure.mgmt.apimanagement.models.BackendCredentialsContract + :param proxy: Backend Proxy Contract Properties + :type proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract + :param tls: Backend TLS Properties + :type tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties + """ + + _validation = { + 'title': {'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 2000, 'min_length': 1}, + 'resource_id': {'max_length': 2000, 'min_length': 1}, + } + + _attribute_map = { + 'title': {'key': 'title', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'BackendProperties'}, + 'credentials': {'key': 'credentials', 'type': 'BackendCredentialsContract'}, + 'proxy': {'key': 'proxy', 'type': 'BackendProxyContract'}, + 'tls': {'key': 'tls', 'type': 'BackendTlsProperties'}, + } + + def __init__(self, **kwargs): + super(BackendBaseParameters, self).__init__(**kwargs) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.resource_id = kwargs.get('resource_id', None) + self.properties = kwargs.get('properties', None) + self.credentials = kwargs.get('credentials', None) + self.proxy = kwargs.get('proxy', None) + self.tls = kwargs.get('tls', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters_py3.py new file mode 100644 index 000000000000..87c0a199bd72 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_base_parameters_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendBaseParameters(Model): + """Backend entity base Parameter set. + + :param title: Backend Title. + :type title: str + :param description: Backend Description. + :type description: str + :param resource_id: Management Uri of the Resource in External System. + This url can be the Arm Resource Id of Logic Apps, Function Apps or Api + Apps. + :type resource_id: str + :param properties: Backend Properties contract + :type properties: ~azure.mgmt.apimanagement.models.BackendProperties + :param credentials: Backend Credentials Contract Properties + :type credentials: + ~azure.mgmt.apimanagement.models.BackendCredentialsContract + :param proxy: Backend Proxy Contract Properties + :type proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract + :param tls: Backend TLS Properties + :type tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties + """ + + _validation = { + 'title': {'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 2000, 'min_length': 1}, + 'resource_id': {'max_length': 2000, 'min_length': 1}, + } + + _attribute_map = { + 'title': {'key': 'title', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'BackendProperties'}, + 'credentials': {'key': 'credentials', 'type': 'BackendCredentialsContract'}, + 'proxy': {'key': 'proxy', 'type': 'BackendProxyContract'}, + 'tls': {'key': 'tls', 'type': 'BackendTlsProperties'}, + } + + def __init__(self, *, title: str=None, description: str=None, resource_id: str=None, properties=None, credentials=None, proxy=None, tls=None, **kwargs) -> None: + super(BackendBaseParameters, self).__init__(**kwargs) + self.title = title + self.description = description + self.resource_id = resource_id + self.properties = properties + self.credentials = credentials + self.proxy = proxy + self.tls = tls diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract.py new file mode 100644 index 000000000000..568362361d49 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class BackendContract(Resource): + """Backend details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param title: Backend Title. + :type title: str + :param description: Backend Description. + :type description: str + :param resource_id: Management Uri of the Resource in External System. + This url can be the Arm Resource Id of Logic Apps, Function Apps or Api + Apps. + :type resource_id: str + :param properties: Backend Properties contract + :type properties: ~azure.mgmt.apimanagement.models.BackendProperties + :param credentials: Backend Credentials Contract Properties + :type credentials: + ~azure.mgmt.apimanagement.models.BackendCredentialsContract + :param proxy: Backend Proxy Contract Properties + :type proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract + :param tls: Backend TLS Properties + :type tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties + :param url: Required. Runtime Url of the Backend. + :type url: str + :param protocol: Required. Backend communication protocol. Possible values + include: 'http', 'soap' + :type protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 2000, 'min_length': 1}, + 'resource_id': {'max_length': 2000, 'min_length': 1}, + 'url': {'required': True, 'max_length': 2000, 'min_length': 1}, + 'protocol': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + 'properties': {'key': 'properties.properties', 'type': 'BackendProperties'}, + 'credentials': {'key': 'properties.credentials', 'type': 'BackendCredentialsContract'}, + 'proxy': {'key': 'properties.proxy', 'type': 'BackendProxyContract'}, + 'tls': {'key': 'properties.tls', 'type': 'BackendTlsProperties'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendContract, self).__init__(**kwargs) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.resource_id = kwargs.get('resource_id', None) + self.properties = kwargs.get('properties', None) + self.credentials = kwargs.get('credentials', None) + self.proxy = kwargs.get('proxy', None) + self.tls = kwargs.get('tls', None) + self.url = kwargs.get('url', None) + self.protocol = kwargs.get('protocol', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_paged.py new file mode 100644 index 000000000000..d79a224281a2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class BackendContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`BackendContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BackendContract]'} + } + + def __init__(self, *args, **kwargs): + + super(BackendContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_py3.py new file mode 100644 index 000000000000..bb2138c77a9e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_contract_py3.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class BackendContract(Resource): + """Backend details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param title: Backend Title. + :type title: str + :param description: Backend Description. + :type description: str + :param resource_id: Management Uri of the Resource in External System. + This url can be the Arm Resource Id of Logic Apps, Function Apps or Api + Apps. + :type resource_id: str + :param properties: Backend Properties contract + :type properties: ~azure.mgmt.apimanagement.models.BackendProperties + :param credentials: Backend Credentials Contract Properties + :type credentials: + ~azure.mgmt.apimanagement.models.BackendCredentialsContract + :param proxy: Backend Proxy Contract Properties + :type proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract + :param tls: Backend TLS Properties + :type tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties + :param url: Required. Runtime Url of the Backend. + :type url: str + :param protocol: Required. Backend communication protocol. Possible values + include: 'http', 'soap' + :type protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 2000, 'min_length': 1}, + 'resource_id': {'max_length': 2000, 'min_length': 1}, + 'url': {'required': True, 'max_length': 2000, 'min_length': 1}, + 'protocol': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + 'properties': {'key': 'properties.properties', 'type': 'BackendProperties'}, + 'credentials': {'key': 'properties.credentials', 'type': 'BackendCredentialsContract'}, + 'proxy': {'key': 'properties.proxy', 'type': 'BackendProxyContract'}, + 'tls': {'key': 'properties.tls', 'type': 'BackendTlsProperties'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + } + + def __init__(self, *, url: str, protocol, title: str=None, description: str=None, resource_id: str=None, properties=None, credentials=None, proxy=None, tls=None, **kwargs) -> None: + super(BackendContract, self).__init__(**kwargs) + self.title = title + self.description = description + self.resource_id = resource_id + self.properties = properties + self.credentials = credentials + self.proxy = proxy + self.tls = tls + self.url = url + self.protocol = protocol diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract.py new file mode 100644 index 000000000000..5a260a612603 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendCredentialsContract(Model): + """Details of the Credentials used to connect to Backend. + + :param certificate: List of Client Certificate Thumbprint. + :type certificate: list[str] + :param query: Query Parameter description. + :type query: dict[str, list[str]] + :param header: Header Parameter description. + :type header: dict[str, list[str]] + :param authorization: Authorization header authentication + :type authorization: + ~azure.mgmt.apimanagement.models.BackendAuthorizationHeaderCredentials + """ + + _validation = { + 'certificate': {'max_items': 32}, + } + + _attribute_map = { + 'certificate': {'key': 'certificate', 'type': '[str]'}, + 'query': {'key': 'query', 'type': '{[str]}'}, + 'header': {'key': 'header', 'type': '{[str]}'}, + 'authorization': {'key': 'authorization', 'type': 'BackendAuthorizationHeaderCredentials'}, + } + + def __init__(self, **kwargs): + super(BackendCredentialsContract, self).__init__(**kwargs) + self.certificate = kwargs.get('certificate', None) + self.query = kwargs.get('query', None) + self.header = kwargs.get('header', None) + self.authorization = kwargs.get('authorization', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract_py3.py new file mode 100644 index 000000000000..437317e64592 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_credentials_contract_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendCredentialsContract(Model): + """Details of the Credentials used to connect to Backend. + + :param certificate: List of Client Certificate Thumbprint. + :type certificate: list[str] + :param query: Query Parameter description. + :type query: dict[str, list[str]] + :param header: Header Parameter description. + :type header: dict[str, list[str]] + :param authorization: Authorization header authentication + :type authorization: + ~azure.mgmt.apimanagement.models.BackendAuthorizationHeaderCredentials + """ + + _validation = { + 'certificate': {'max_items': 32}, + } + + _attribute_map = { + 'certificate': {'key': 'certificate', 'type': '[str]'}, + 'query': {'key': 'query', 'type': '{[str]}'}, + 'header': {'key': 'header', 'type': '{[str]}'}, + 'authorization': {'key': 'authorization', 'type': 'BackendAuthorizationHeaderCredentials'}, + } + + def __init__(self, *, certificate=None, query=None, header=None, authorization=None, **kwargs) -> None: + super(BackendCredentialsContract, self).__init__(**kwargs) + self.certificate = certificate + self.query = query + self.header = header + self.authorization = authorization diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties.py new file mode 100644 index 000000000000..6772b9235485 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendProperties(Model): + """Properties specific to the Backend Type. + + :param service_fabric_cluster: Backend Service Fabric Cluster Properties + :type service_fabric_cluster: + ~azure.mgmt.apimanagement.models.BackendServiceFabricClusterProperties + """ + + _attribute_map = { + 'service_fabric_cluster': {'key': 'serviceFabricCluster', 'type': 'BackendServiceFabricClusterProperties'}, + } + + def __init__(self, **kwargs): + super(BackendProperties, self).__init__(**kwargs) + self.service_fabric_cluster = kwargs.get('service_fabric_cluster', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties_py3.py new file mode 100644 index 000000000000..b84cc3f57d84 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_properties_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendProperties(Model): + """Properties specific to the Backend Type. + + :param service_fabric_cluster: Backend Service Fabric Cluster Properties + :type service_fabric_cluster: + ~azure.mgmt.apimanagement.models.BackendServiceFabricClusterProperties + """ + + _attribute_map = { + 'service_fabric_cluster': {'key': 'serviceFabricCluster', 'type': 'BackendServiceFabricClusterProperties'}, + } + + def __init__(self, *, service_fabric_cluster=None, **kwargs) -> None: + super(BackendProperties, self).__init__(**kwargs) + self.service_fabric_cluster = service_fabric_cluster diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract.py new file mode 100644 index 000000000000..d47cd57bbd1c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendProxyContract(Model): + """Details of the Backend WebProxy Server to use in the Request to Backend. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. WebProxy Server AbsoluteUri property which includes + the entire URI stored in the Uri instance, including all fragments and + query strings. + :type url: str + :param username: Username to connect to the WebProxy server + :type username: str + :param password: Password to connect to the WebProxy Server + :type password: str + """ + + _validation = { + 'url': {'required': True, 'max_length': 2000, 'min_length': 1}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendProxyContract, self).__init__(**kwargs) + self.url = kwargs.get('url', None) + self.username = kwargs.get('username', None) + self.password = kwargs.get('password', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract_py3.py new file mode 100644 index 000000000000..faee560245f7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_proxy_contract_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendProxyContract(Model): + """Details of the Backend WebProxy Server to use in the Request to Backend. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. WebProxy Server AbsoluteUri property which includes + the entire URI stored in the Uri instance, including all fragments and + query strings. + :type url: str + :param username: Username to connect to the WebProxy server + :type username: str + :param password: Password to connect to the WebProxy Server + :type password: str + """ + + _validation = { + 'url': {'required': True, 'max_length': 2000, 'min_length': 1}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, url: str, username: str=None, password: str=None, **kwargs) -> None: + super(BackendProxyContract, self).__init__(**kwargs) + self.url = url + self.username = username + self.password = password diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract.py new file mode 100644 index 000000000000..3ca83471ba8d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class BackendReconnectContract(Resource): + """Reconnect request parameters. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param after: Duration in ISO8601 format after which reconnect will be + initiated. Minimum duration of the Reconnect is PT2M. + :type after: timedelta + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'after': {'key': 'properties.after', 'type': 'duration'}, + } + + def __init__(self, **kwargs): + super(BackendReconnectContract, self).__init__(**kwargs) + self.after = kwargs.get('after', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract_py3.py new file mode 100644 index 000000000000..5e193014df50 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_reconnect_contract_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class BackendReconnectContract(Resource): + """Reconnect request parameters. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param after: Duration in ISO8601 format after which reconnect will be + initiated. Minimum duration of the Reconnect is PT2M. + :type after: timedelta + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'after': {'key': 'properties.after', 'type': 'duration'}, + } + + def __init__(self, *, after=None, **kwargs) -> None: + super(BackendReconnectContract, self).__init__(**kwargs) + self.after = after diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties.py new file mode 100644 index 000000000000..cd558fcef895 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendServiceFabricClusterProperties(Model): + """Properties of the Service Fabric Type Backend. + + All required parameters must be populated in order to send to Azure. + + :param client_certificatethumbprint: Required. The client certificate + thumbprint for the management endpoint. + :type client_certificatethumbprint: str + :param max_partition_resolution_retries: Maximum number of retries while + attempting resolve the partition. + :type max_partition_resolution_retries: int + :param management_endpoints: Required. The cluster management endpoint. + :type management_endpoints: list[str] + :param server_certificate_thumbprints: Thumbprints of certificates cluster + management service uses for tls communication + :type server_certificate_thumbprints: list[str] + :param server_x509_names: Server X509 Certificate Names Collection + :type server_x509_names: + list[~azure.mgmt.apimanagement.models.X509CertificateName] + """ + + _validation = { + 'client_certificatethumbprint': {'required': True}, + 'management_endpoints': {'required': True}, + } + + _attribute_map = { + 'client_certificatethumbprint': {'key': 'clientCertificatethumbprint', 'type': 'str'}, + 'max_partition_resolution_retries': {'key': 'maxPartitionResolutionRetries', 'type': 'int'}, + 'management_endpoints': {'key': 'managementEndpoints', 'type': '[str]'}, + 'server_certificate_thumbprints': {'key': 'serverCertificateThumbprints', 'type': '[str]'}, + 'server_x509_names': {'key': 'serverX509Names', 'type': '[X509CertificateName]'}, + } + + def __init__(self, **kwargs): + super(BackendServiceFabricClusterProperties, self).__init__(**kwargs) + self.client_certificatethumbprint = kwargs.get('client_certificatethumbprint', None) + self.max_partition_resolution_retries = kwargs.get('max_partition_resolution_retries', None) + self.management_endpoints = kwargs.get('management_endpoints', None) + self.server_certificate_thumbprints = kwargs.get('server_certificate_thumbprints', None) + self.server_x509_names = kwargs.get('server_x509_names', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties_py3.py new file mode 100644 index 000000000000..7a405ec352b2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_service_fabric_cluster_properties_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendServiceFabricClusterProperties(Model): + """Properties of the Service Fabric Type Backend. + + All required parameters must be populated in order to send to Azure. + + :param client_certificatethumbprint: Required. The client certificate + thumbprint for the management endpoint. + :type client_certificatethumbprint: str + :param max_partition_resolution_retries: Maximum number of retries while + attempting resolve the partition. + :type max_partition_resolution_retries: int + :param management_endpoints: Required. The cluster management endpoint. + :type management_endpoints: list[str] + :param server_certificate_thumbprints: Thumbprints of certificates cluster + management service uses for tls communication + :type server_certificate_thumbprints: list[str] + :param server_x509_names: Server X509 Certificate Names Collection + :type server_x509_names: + list[~azure.mgmt.apimanagement.models.X509CertificateName] + """ + + _validation = { + 'client_certificatethumbprint': {'required': True}, + 'management_endpoints': {'required': True}, + } + + _attribute_map = { + 'client_certificatethumbprint': {'key': 'clientCertificatethumbprint', 'type': 'str'}, + 'max_partition_resolution_retries': {'key': 'maxPartitionResolutionRetries', 'type': 'int'}, + 'management_endpoints': {'key': 'managementEndpoints', 'type': '[str]'}, + 'server_certificate_thumbprints': {'key': 'serverCertificateThumbprints', 'type': '[str]'}, + 'server_x509_names': {'key': 'serverX509Names', 'type': '[X509CertificateName]'}, + } + + def __init__(self, *, client_certificatethumbprint: str, management_endpoints, max_partition_resolution_retries: int=None, server_certificate_thumbprints=None, server_x509_names=None, **kwargs) -> None: + super(BackendServiceFabricClusterProperties, self).__init__(**kwargs) + self.client_certificatethumbprint = client_certificatethumbprint + self.max_partition_resolution_retries = max_partition_resolution_retries + self.management_endpoints = management_endpoints + self.server_certificate_thumbprints = server_certificate_thumbprints + self.server_x509_names = server_x509_names diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties.py new file mode 100644 index 000000000000..8524bf76f66f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendTlsProperties(Model): + """Properties controlling TLS Certificate Validation. + + :param validate_certificate_chain: Flag indicating whether SSL certificate + chain validation should be done when using self-signed certificates for + this backend host. Default value: True . + :type validate_certificate_chain: bool + :param validate_certificate_name: Flag indicating whether SSL certificate + name validation should be done when using self-signed certificates for + this backend host. Default value: True . + :type validate_certificate_name: bool + """ + + _attribute_map = { + 'validate_certificate_chain': {'key': 'validateCertificateChain', 'type': 'bool'}, + 'validate_certificate_name': {'key': 'validateCertificateName', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(BackendTlsProperties, self).__init__(**kwargs) + self.validate_certificate_chain = kwargs.get('validate_certificate_chain', True) + self.validate_certificate_name = kwargs.get('validate_certificate_name', True) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties_py3.py new file mode 100644 index 000000000000..a9596d94041e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_tls_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendTlsProperties(Model): + """Properties controlling TLS Certificate Validation. + + :param validate_certificate_chain: Flag indicating whether SSL certificate + chain validation should be done when using self-signed certificates for + this backend host. Default value: True . + :type validate_certificate_chain: bool + :param validate_certificate_name: Flag indicating whether SSL certificate + name validation should be done when using self-signed certificates for + this backend host. Default value: True . + :type validate_certificate_name: bool + """ + + _attribute_map = { + 'validate_certificate_chain': {'key': 'validateCertificateChain', 'type': 'bool'}, + 'validate_certificate_name': {'key': 'validateCertificateName', 'type': 'bool'}, + } + + def __init__(self, *, validate_certificate_chain: bool=True, validate_certificate_name: bool=True, **kwargs) -> None: + super(BackendTlsProperties, self).__init__(**kwargs) + self.validate_certificate_chain = validate_certificate_chain + self.validate_certificate_name = validate_certificate_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters.py new file mode 100644 index 000000000000..a74bfecb8a4a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendUpdateParameters(Model): + """Backend update parameters. + + :param title: Backend Title. + :type title: str + :param description: Backend Description. + :type description: str + :param resource_id: Management Uri of the Resource in External System. + This url can be the Arm Resource Id of Logic Apps, Function Apps or Api + Apps. + :type resource_id: str + :param properties: Backend Properties contract + :type properties: ~azure.mgmt.apimanagement.models.BackendProperties + :param credentials: Backend Credentials Contract Properties + :type credentials: + ~azure.mgmt.apimanagement.models.BackendCredentialsContract + :param proxy: Backend Proxy Contract Properties + :type proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract + :param tls: Backend TLS Properties + :type tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties + :param url: Runtime Url of the Backend. + :type url: str + :param protocol: Backend communication protocol. Possible values include: + 'http', 'soap' + :type protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol + """ + + _validation = { + 'title': {'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 2000, 'min_length': 1}, + 'resource_id': {'max_length': 2000, 'min_length': 1}, + 'url': {'max_length': 2000, 'min_length': 1}, + } + + _attribute_map = { + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + 'properties': {'key': 'properties.properties', 'type': 'BackendProperties'}, + 'credentials': {'key': 'properties.credentials', 'type': 'BackendCredentialsContract'}, + 'proxy': {'key': 'properties.proxy', 'type': 'BackendProxyContract'}, + 'tls': {'key': 'properties.tls', 'type': 'BackendTlsProperties'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendUpdateParameters, self).__init__(**kwargs) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.resource_id = kwargs.get('resource_id', None) + self.properties = kwargs.get('properties', None) + self.credentials = kwargs.get('credentials', None) + self.proxy = kwargs.get('proxy', None) + self.tls = kwargs.get('tls', None) + self.url = kwargs.get('url', None) + self.protocol = kwargs.get('protocol', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters_py3.py new file mode 100644 index 000000000000..a83a9a55586c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/backend_update_parameters_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackendUpdateParameters(Model): + """Backend update parameters. + + :param title: Backend Title. + :type title: str + :param description: Backend Description. + :type description: str + :param resource_id: Management Uri of the Resource in External System. + This url can be the Arm Resource Id of Logic Apps, Function Apps or Api + Apps. + :type resource_id: str + :param properties: Backend Properties contract + :type properties: ~azure.mgmt.apimanagement.models.BackendProperties + :param credentials: Backend Credentials Contract Properties + :type credentials: + ~azure.mgmt.apimanagement.models.BackendCredentialsContract + :param proxy: Backend Proxy Contract Properties + :type proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract + :param tls: Backend TLS Properties + :type tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties + :param url: Runtime Url of the Backend. + :type url: str + :param protocol: Backend communication protocol. Possible values include: + 'http', 'soap' + :type protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol + """ + + _validation = { + 'title': {'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 2000, 'min_length': 1}, + 'resource_id': {'max_length': 2000, 'min_length': 1}, + 'url': {'max_length': 2000, 'min_length': 1}, + } + + _attribute_map = { + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + 'properties': {'key': 'properties.properties', 'type': 'BackendProperties'}, + 'credentials': {'key': 'properties.credentials', 'type': 'BackendCredentialsContract'}, + 'proxy': {'key': 'properties.proxy', 'type': 'BackendProxyContract'}, + 'tls': {'key': 'properties.tls', 'type': 'BackendTlsProperties'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + } + + def __init__(self, *, title: str=None, description: str=None, resource_id: str=None, properties=None, credentials=None, proxy=None, tls=None, url: str=None, protocol=None, **kwargs) -> None: + super(BackendUpdateParameters, self).__init__(**kwargs) + self.title = title + self.description = description + self.resource_id = resource_id + self.properties = properties + self.credentials = credentials + self.proxy = proxy + self.tls = tls + self.url = url + self.protocol = protocol diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings.py new file mode 100644 index 000000000000..b0f9021fbada --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BodyDiagnosticSettings(Model): + """Body logging settings. + + :param bytes: Number of request body bytes to log. + :type bytes: int + """ + + _validation = { + 'bytes': {'maximum': 8192}, + } + + _attribute_map = { + 'bytes': {'key': 'bytes', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(BodyDiagnosticSettings, self).__init__(**kwargs) + self.bytes = kwargs.get('bytes', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings_py3.py new file mode 100644 index 000000000000..4192e4a3dc58 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/body_diagnostic_settings_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BodyDiagnosticSettings(Model): + """Body logging settings. + + :param bytes: Number of request body bytes to log. + :type bytes: int + """ + + _validation = { + 'bytes': {'maximum': 8192}, + } + + _attribute_map = { + 'bytes': {'key': 'bytes', 'type': 'int'}, + } + + def __init__(self, *, bytes: int=None, **kwargs) -> None: + super(BodyDiagnosticSettings, self).__init__(**kwargs) + self.bytes = bytes diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract.py new file mode 100644 index 000000000000..ea1874f4606c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class CacheContract(Resource): + """Cache details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Cache description + :type description: str + :param connection_string: Required. Runtime connection string to cache + :type connection_string: str + :param resource_id: Original uri of entity in external system cache points + to + :type resource_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'max_length': 2000}, + 'connection_string': {'required': True, 'max_length': 300}, + 'resource_id': {'max_length': 2000}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'connection_string': {'key': 'properties.connectionString', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CacheContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.connection_string = kwargs.get('connection_string', None) + self.resource_id = kwargs.get('resource_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_paged.py new file mode 100644 index 000000000000..13b6af191d44 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class CacheContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`CacheContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[CacheContract]'} + } + + def __init__(self, *args, **kwargs): + + super(CacheContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_py3.py new file mode 100644 index 000000000000..646e00c0e511 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_contract_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class CacheContract(Resource): + """Cache details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Cache description + :type description: str + :param connection_string: Required. Runtime connection string to cache + :type connection_string: str + :param resource_id: Original uri of entity in external system cache points + to + :type resource_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'max_length': 2000}, + 'connection_string': {'required': True, 'max_length': 300}, + 'resource_id': {'max_length': 2000}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'connection_string': {'key': 'properties.connectionString', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + } + + def __init__(self, *, connection_string: str, description: str=None, resource_id: str=None, **kwargs) -> None: + super(CacheContract, self).__init__(**kwargs) + self.description = description + self.connection_string = connection_string + self.resource_id = resource_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters.py new file mode 100644 index 000000000000..541a426dd833 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CacheUpdateParameters(Model): + """Cache update details. + + :param description: Cache description + :type description: str + :param connection_string: Runtime connection string to cache + :type connection_string: str + :param resource_id: Original uri of entity in external system cache points + to + :type resource_id: str + """ + + _validation = { + 'description': {'max_length': 2000}, + 'connection_string': {'max_length': 300}, + 'resource_id': {'max_length': 2000}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'connection_string': {'key': 'properties.connectionString', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CacheUpdateParameters, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.connection_string = kwargs.get('connection_string', None) + self.resource_id = kwargs.get('resource_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters_py3.py new file mode 100644 index 000000000000..88a8f3d42bce --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/cache_update_parameters_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CacheUpdateParameters(Model): + """Cache update details. + + :param description: Cache description + :type description: str + :param connection_string: Runtime connection string to cache + :type connection_string: str + :param resource_id: Original uri of entity in external system cache points + to + :type resource_id: str + """ + + _validation = { + 'description': {'max_length': 2000}, + 'connection_string': {'max_length': 300}, + 'resource_id': {'max_length': 2000}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'connection_string': {'key': 'properties.connectionString', 'type': 'str'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, connection_string: str=None, resource_id: str=None, **kwargs) -> None: + super(CacheUpdateParameters, self).__init__(**kwargs) + self.description = description + self.connection_string = connection_string + self.resource_id = resource_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration.py new file mode 100644 index 000000000000..82f9e6d8f4ef --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateConfiguration(Model): + """Certificate configuration which consist of non-trusted intermediates and + root certificates. + + All required parameters must be populated in order to send to Azure. + + :param encoded_certificate: Base64 Encoded certificate. + :type encoded_certificate: str + :param certificate_password: Certificate Password. + :type certificate_password: str + :param store_name: Required. The + System.Security.Cryptography.x509certificates.StoreName certificate store + location. Only Root and CertificateAuthority are valid locations. Possible + values include: 'CertificateAuthority', 'Root' + :type store_name: str or ~azure.mgmt.apimanagement.models.enum + :param certificate: Certificate information. + :type certificate: ~azure.mgmt.apimanagement.models.CertificateInformation + """ + + _validation = { + 'store_name': {'required': True}, + } + + _attribute_map = { + 'encoded_certificate': {'key': 'encodedCertificate', 'type': 'str'}, + 'certificate_password': {'key': 'certificatePassword', 'type': 'str'}, + 'store_name': {'key': 'storeName', 'type': 'str'}, + 'certificate': {'key': 'certificate', 'type': 'CertificateInformation'}, + } + + def __init__(self, **kwargs): + super(CertificateConfiguration, self).__init__(**kwargs) + self.encoded_certificate = kwargs.get('encoded_certificate', None) + self.certificate_password = kwargs.get('certificate_password', None) + self.store_name = kwargs.get('store_name', None) + self.certificate = kwargs.get('certificate', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration_py3.py new file mode 100644 index 000000000000..f15c5709a513 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_configuration_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateConfiguration(Model): + """Certificate configuration which consist of non-trusted intermediates and + root certificates. + + All required parameters must be populated in order to send to Azure. + + :param encoded_certificate: Base64 Encoded certificate. + :type encoded_certificate: str + :param certificate_password: Certificate Password. + :type certificate_password: str + :param store_name: Required. The + System.Security.Cryptography.x509certificates.StoreName certificate store + location. Only Root and CertificateAuthority are valid locations. Possible + values include: 'CertificateAuthority', 'Root' + :type store_name: str or ~azure.mgmt.apimanagement.models.enum + :param certificate: Certificate information. + :type certificate: ~azure.mgmt.apimanagement.models.CertificateInformation + """ + + _validation = { + 'store_name': {'required': True}, + } + + _attribute_map = { + 'encoded_certificate': {'key': 'encodedCertificate', 'type': 'str'}, + 'certificate_password': {'key': 'certificatePassword', 'type': 'str'}, + 'store_name': {'key': 'storeName', 'type': 'str'}, + 'certificate': {'key': 'certificate', 'type': 'CertificateInformation'}, + } + + def __init__(self, *, store_name, encoded_certificate: str=None, certificate_password: str=None, certificate=None, **kwargs) -> None: + super(CertificateConfiguration, self).__init__(**kwargs) + self.encoded_certificate = encoded_certificate + self.certificate_password = certificate_password + self.store_name = store_name + self.certificate = certificate diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract.py new file mode 100644 index 000000000000..af06bb20cf95 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class CertificateContract(Resource): + """Certificate details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param subject: Required. Subject attribute of the certificate. + :type subject: str + :param thumbprint: Required. Thumbprint of the certificate. + :type thumbprint: str + :param expiration_date: Required. Expiration date of the certificate. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type expiration_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subject': {'required': True}, + 'thumbprint': {'required': True}, + 'expiration_date': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'subject': {'key': 'properties.subject', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(CertificateContract, self).__init__(**kwargs) + self.subject = kwargs.get('subject', None) + self.thumbprint = kwargs.get('thumbprint', None) + self.expiration_date = kwargs.get('expiration_date', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_paged.py new file mode 100644 index 000000000000..e2d7255ecfa6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class CertificateContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`CertificateContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[CertificateContract]'} + } + + def __init__(self, *args, **kwargs): + + super(CertificateContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_py3.py new file mode 100644 index 000000000000..464100179414 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_contract_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class CertificateContract(Resource): + """Certificate details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param subject: Required. Subject attribute of the certificate. + :type subject: str + :param thumbprint: Required. Thumbprint of the certificate. + :type thumbprint: str + :param expiration_date: Required. Expiration date of the certificate. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type expiration_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subject': {'required': True}, + 'thumbprint': {'required': True}, + 'expiration_date': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'subject': {'key': 'properties.subject', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'}, + } + + def __init__(self, *, subject: str, thumbprint: str, expiration_date, **kwargs) -> None: + super(CertificateContract, self).__init__(**kwargs) + self.subject = subject + self.thumbprint = thumbprint + self.expiration_date = expiration_date diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters.py new file mode 100644 index 000000000000..6b195ea702a7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCreateOrUpdateParameters(Model): + """Certificate create or update details. + + All required parameters must be populated in order to send to Azure. + + :param data: Required. Base 64 encoded certificate using the + application/x-pkcs12 representation. + :type data: str + :param password: Required. Password for the Certificate + :type password: str + """ + + _validation = { + 'data': {'required': True}, + 'password': {'required': True}, + } + + _attribute_map = { + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateCreateOrUpdateParameters, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.password = kwargs.get('password', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters_py3.py new file mode 100644 index 000000000000..0a14fa8710ae --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_create_or_update_parameters_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCreateOrUpdateParameters(Model): + """Certificate create or update details. + + All required parameters must be populated in order to send to Azure. + + :param data: Required. Base 64 encoded certificate using the + application/x-pkcs12 representation. + :type data: str + :param password: Required. Password for the Certificate + :type password: str + """ + + _validation = { + 'data': {'required': True}, + 'password': {'required': True}, + } + + _attribute_map = { + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + } + + def __init__(self, *, data: str, password: str, **kwargs) -> None: + super(CertificateCreateOrUpdateParameters, self).__init__(**kwargs) + self.data = data + self.password = password diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information.py new file mode 100644 index 000000000000..d66883195efe --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateInformation(Model): + """SSL certificate information. + + All required parameters must be populated in order to send to Azure. + + :param expiry: Required. Expiration date of the certificate. The date + conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by + the ISO 8601 standard. + :type expiry: datetime + :param thumbprint: Required. Thumbprint of the certificate. + :type thumbprint: str + :param subject: Required. Subject of the certificate. + :type subject: str + """ + + _validation = { + 'expiry': {'required': True}, + 'thumbprint': {'required': True}, + 'subject': {'required': True}, + } + + _attribute_map = { + 'expiry': {'key': 'expiry', 'type': 'iso-8601'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + 'subject': {'key': 'subject', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateInformation, self).__init__(**kwargs) + self.expiry = kwargs.get('expiry', None) + self.thumbprint = kwargs.get('thumbprint', None) + self.subject = kwargs.get('subject', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information_py3.py new file mode 100644 index 000000000000..a14d9b1d7756 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/certificate_information_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateInformation(Model): + """SSL certificate information. + + All required parameters must be populated in order to send to Azure. + + :param expiry: Required. Expiration date of the certificate. The date + conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by + the ISO 8601 standard. + :type expiry: datetime + :param thumbprint: Required. Thumbprint of the certificate. + :type thumbprint: str + :param subject: Required. Subject of the certificate. + :type subject: str + """ + + _validation = { + 'expiry': {'required': True}, + 'thumbprint': {'required': True}, + 'subject': {'required': True}, + } + + _attribute_map = { + 'expiry': {'key': 'expiry', 'type': 'iso-8601'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + 'subject': {'key': 'subject', 'type': 'str'}, + } + + def __init__(self, *, expiry, thumbprint: str, subject: str, **kwargs) -> None: + super(CertificateInformation, self).__init__(**kwargs) + self.expiry = expiry + self.thumbprint = thumbprint + self.subject = subject diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract.py new file mode 100644 index 000000000000..58737990e11f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityStatusContract(Model): + """Details about connectivity to a resource. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The hostname of the resource which the service + depends on. This can be the database, storage or any other azure resource + on which the service depends upon. + :type name: str + :param status: Required. Resource Connectivity Status Type identifier. + Possible values include: 'initializing', 'success', 'failure' + :type status: str or + ~azure.mgmt.apimanagement.models.ConnectivityStatusType + :param error: Error details of the connectivity to the resource. + :type error: str + :param last_updated: Required. The date when the resource connectivity + status was last updated. This status should be updated every 15 minutes. + If this status has not been updated, then it means that the service has + lost network connectivity to the resource, from inside the Virtual + Network.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` + as specified by the ISO 8601 standard. + :type last_updated: datetime + :param last_status_change: Required. The date when the resource + connectivity status last Changed from success to failure or vice-versa. + The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + specified by the ISO 8601 standard. + :type last_status_change: datetime + """ + + _validation = { + 'name': {'required': True, 'min_length': 1}, + 'status': {'required': True}, + 'last_updated': {'required': True}, + 'last_status_change': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'str'}, + 'last_updated': {'key': 'lastUpdated', 'type': 'iso-8601'}, + 'last_status_change': {'key': 'lastStatusChange', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(ConnectivityStatusContract, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.status = kwargs.get('status', None) + self.error = kwargs.get('error', None) + self.last_updated = kwargs.get('last_updated', None) + self.last_status_change = kwargs.get('last_status_change', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract_py3.py new file mode 100644 index 000000000000..4ff86d73dda1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/connectivity_status_contract_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityStatusContract(Model): + """Details about connectivity to a resource. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The hostname of the resource which the service + depends on. This can be the database, storage or any other azure resource + on which the service depends upon. + :type name: str + :param status: Required. Resource Connectivity Status Type identifier. + Possible values include: 'initializing', 'success', 'failure' + :type status: str or + ~azure.mgmt.apimanagement.models.ConnectivityStatusType + :param error: Error details of the connectivity to the resource. + :type error: str + :param last_updated: Required. The date when the resource connectivity + status was last updated. This status should be updated every 15 minutes. + If this status has not been updated, then it means that the service has + lost network connectivity to the resource, from inside the Virtual + Network.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` + as specified by the ISO 8601 standard. + :type last_updated: datetime + :param last_status_change: Required. The date when the resource + connectivity status last Changed from success to failure or vice-versa. + The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + specified by the ISO 8601 standard. + :type last_status_change: datetime + """ + + _validation = { + 'name': {'required': True, 'min_length': 1}, + 'status': {'required': True}, + 'last_updated': {'required': True}, + 'last_status_change': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'str'}, + 'last_updated': {'key': 'lastUpdated', 'type': 'iso-8601'}, + 'last_status_change': {'key': 'lastStatusChange', 'type': 'iso-8601'}, + } + + def __init__(self, *, name: str, status, last_updated, last_status_change, error: str=None, **kwargs) -> None: + super(ConnectivityStatusContract, self).__init__(**kwargs) + self.name = name + self.status = status + self.error = error + self.last_updated = last_updated + self.last_status_change = last_status_change diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters.py new file mode 100644 index 000000000000..3e3e7db3f36f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeployConfigurationParameters(Model): + """Deploy Tenant Configuration Contract. + + All required parameters must be populated in order to send to Azure. + + :param branch: Required. The name of the Git branch from which the + configuration is to be deployed to the configuration database. + :type branch: str + :param force: The value enforcing deleting subscriptions to products that + are deleted in this update. + :type force: bool + """ + + _validation = { + 'branch': {'required': True}, + } + + _attribute_map = { + 'branch': {'key': 'properties.branch', 'type': 'str'}, + 'force': {'key': 'properties.force', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DeployConfigurationParameters, self).__init__(**kwargs) + self.branch = kwargs.get('branch', None) + self.force = kwargs.get('force', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters_py3.py new file mode 100644 index 000000000000..f7bf03929d4d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/deploy_configuration_parameters_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeployConfigurationParameters(Model): + """Deploy Tenant Configuration Contract. + + All required parameters must be populated in order to send to Azure. + + :param branch: Required. The name of the Git branch from which the + configuration is to be deployed to the configuration database. + :type branch: str + :param force: The value enforcing deleting subscriptions to products that + are deleted in this update. + :type force: bool + """ + + _validation = { + 'branch': {'required': True}, + } + + _attribute_map = { + 'branch': {'key': 'properties.branch', 'type': 'str'}, + 'force': {'key': 'properties.force', 'type': 'bool'}, + } + + def __init__(self, *, branch: str, force: bool=None, **kwargs) -> None: + super(DeployConfigurationParameters, self).__init__(**kwargs) + self.branch = branch + self.force = force diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract.py new file mode 100644 index 000000000000..041dd6002e6a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class DiagnosticContract(Resource): + """Diagnostic details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param always_log: Specifies for what type of messages sampling settings + should not apply. Possible values include: 'allErrors' + :type always_log: str or ~azure.mgmt.apimanagement.models.AlwaysLog + :param logger_id: Required. Resource Id of a target logger. + :type logger_id: str + :param sampling: Sampling settings for Diagnostic. + :type sampling: ~azure.mgmt.apimanagement.models.SamplingSettings + :param frontend: Diagnostic settings for incoming/outgoing HTTP messages + to the Gateway. + :type frontend: + ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings + :param backend: Diagnostic settings for incoming/outgoing HTTP messages to + the Backend + :type backend: ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings + :param enable_http_correlation_headers: Whether to process Correlation + Headers coming to Api Management Service. Only applicable to Application + Insights diagnostics. Default is true. + :type enable_http_correlation_headers: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'logger_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'always_log': {'key': 'properties.alwaysLog', 'type': 'str'}, + 'logger_id': {'key': 'properties.loggerId', 'type': 'str'}, + 'sampling': {'key': 'properties.sampling', 'type': 'SamplingSettings'}, + 'frontend': {'key': 'properties.frontend', 'type': 'PipelineDiagnosticSettings'}, + 'backend': {'key': 'properties.backend', 'type': 'PipelineDiagnosticSettings'}, + 'enable_http_correlation_headers': {'key': 'properties.enableHttpCorrelationHeaders', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DiagnosticContract, self).__init__(**kwargs) + self.always_log = kwargs.get('always_log', None) + self.logger_id = kwargs.get('logger_id', None) + self.sampling = kwargs.get('sampling', None) + self.frontend = kwargs.get('frontend', None) + self.backend = kwargs.get('backend', None) + self.enable_http_correlation_headers = kwargs.get('enable_http_correlation_headers', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_paged.py new file mode 100644 index 000000000000..ea142d87269f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class DiagnosticContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`DiagnosticContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DiagnosticContract]'} + } + + def __init__(self, *args, **kwargs): + + super(DiagnosticContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_py3.py new file mode 100644 index 000000000000..b76b868476c7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/diagnostic_contract_py3.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class DiagnosticContract(Resource): + """Diagnostic details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param always_log: Specifies for what type of messages sampling settings + should not apply. Possible values include: 'allErrors' + :type always_log: str or ~azure.mgmt.apimanagement.models.AlwaysLog + :param logger_id: Required. Resource Id of a target logger. + :type logger_id: str + :param sampling: Sampling settings for Diagnostic. + :type sampling: ~azure.mgmt.apimanagement.models.SamplingSettings + :param frontend: Diagnostic settings for incoming/outgoing HTTP messages + to the Gateway. + :type frontend: + ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings + :param backend: Diagnostic settings for incoming/outgoing HTTP messages to + the Backend + :type backend: ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings + :param enable_http_correlation_headers: Whether to process Correlation + Headers coming to Api Management Service. Only applicable to Application + Insights diagnostics. Default is true. + :type enable_http_correlation_headers: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'logger_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'always_log': {'key': 'properties.alwaysLog', 'type': 'str'}, + 'logger_id': {'key': 'properties.loggerId', 'type': 'str'}, + 'sampling': {'key': 'properties.sampling', 'type': 'SamplingSettings'}, + 'frontend': {'key': 'properties.frontend', 'type': 'PipelineDiagnosticSettings'}, + 'backend': {'key': 'properties.backend', 'type': 'PipelineDiagnosticSettings'}, + 'enable_http_correlation_headers': {'key': 'properties.enableHttpCorrelationHeaders', 'type': 'bool'}, + } + + def __init__(self, *, logger_id: str, always_log=None, sampling=None, frontend=None, backend=None, enable_http_correlation_headers: bool=None, **kwargs) -> None: + super(DiagnosticContract, self).__init__(**kwargs) + self.always_log = always_log + self.logger_id = logger_id + self.sampling = sampling + self.frontend = frontend + self.backend = backend + self.enable_http_correlation_headers = enable_http_correlation_headers diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract.py new file mode 100644 index 000000000000..c23ba2c72909 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class EmailTemplateContract(Resource): + """Email Template details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param subject: Required. Subject of the Template. + :type subject: str + :param body: Required. Email Template Body. This should be a valid + XDocument + :type body: str + :param title: Title of the Template. + :type title: str + :param description: Description of the Email Template. + :type description: str + :ivar is_default: Whether the template is the default template provided by + Api Management or has been edited. + :vartype is_default: bool + :param parameters: Email Template Parameter values. + :type parameters: + list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subject': {'required': True, 'max_length': 1000, 'min_length': 1}, + 'body': {'required': True, 'min_length': 1}, + 'is_default': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'subject': {'key': 'properties.subject', 'type': 'str'}, + 'body': {'key': 'properties.body', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'is_default': {'key': 'properties.isDefault', 'type': 'bool'}, + 'parameters': {'key': 'properties.parameters', 'type': '[EmailTemplateParametersContractProperties]'}, + } + + def __init__(self, **kwargs): + super(EmailTemplateContract, self).__init__(**kwargs) + self.subject = kwargs.get('subject', None) + self.body = kwargs.get('body', None) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.is_default = None + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_paged.py new file mode 100644 index 000000000000..9f137e41d6a8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class EmailTemplateContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`EmailTemplateContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[EmailTemplateContract]'} + } + + def __init__(self, *args, **kwargs): + + super(EmailTemplateContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_py3.py new file mode 100644 index 000000000000..3d3fcd217589 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_contract_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class EmailTemplateContract(Resource): + """Email Template details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param subject: Required. Subject of the Template. + :type subject: str + :param body: Required. Email Template Body. This should be a valid + XDocument + :type body: str + :param title: Title of the Template. + :type title: str + :param description: Description of the Email Template. + :type description: str + :ivar is_default: Whether the template is the default template provided by + Api Management or has been edited. + :vartype is_default: bool + :param parameters: Email Template Parameter values. + :type parameters: + list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subject': {'required': True, 'max_length': 1000, 'min_length': 1}, + 'body': {'required': True, 'min_length': 1}, + 'is_default': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'subject': {'key': 'properties.subject', 'type': 'str'}, + 'body': {'key': 'properties.body', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'is_default': {'key': 'properties.isDefault', 'type': 'bool'}, + 'parameters': {'key': 'properties.parameters', 'type': '[EmailTemplateParametersContractProperties]'}, + } + + def __init__(self, *, subject: str, body: str, title: str=None, description: str=None, parameters=None, **kwargs) -> None: + super(EmailTemplateContract, self).__init__(**kwargs) + self.subject = subject + self.body = body + self.title = title + self.description = description + self.is_default = None + self.parameters = parameters diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties.py new file mode 100644 index 000000000000..060b64257a7a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EmailTemplateParametersContractProperties(Model): + """Email Template Parameter contract. + + :param name: Template parameter name. + :type name: str + :param title: Template parameter title. + :type title: str + :param description: Template parameter description. + :type description: str + """ + + _validation = { + 'name': {'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + 'title': {'max_length': 4096, 'min_length': 1}, + 'description': {'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'title': {'key': 'title', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EmailTemplateParametersContractProperties, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties_py3.py new file mode 100644 index 000000000000..58cce1c0df98 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_parameters_contract_properties_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EmailTemplateParametersContractProperties(Model): + """Email Template Parameter contract. + + :param name: Template parameter name. + :type name: str + :param title: Template parameter title. + :type title: str + :param description: Template parameter description. + :type description: str + """ + + _validation = { + 'name': {'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + 'title': {'max_length': 4096, 'min_length': 1}, + 'description': {'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'title': {'key': 'title', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, title: str=None, description: str=None, **kwargs) -> None: + super(EmailTemplateParametersContractProperties, self).__init__(**kwargs) + self.name = name + self.title = title + self.description = description diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters.py new file mode 100644 index 000000000000..f7a7e5c3b452 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EmailTemplateUpdateParameters(Model): + """Email Template update Parameters. + + :param subject: Subject of the Template. + :type subject: str + :param title: Title of the Template. + :type title: str + :param description: Description of the Email Template. + :type description: str + :param body: Email Template Body. This should be a valid XDocument + :type body: str + :param parameters: Email Template Parameter values. + :type parameters: + list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] + """ + + _validation = { + 'subject': {'max_length': 1000, 'min_length': 1}, + 'body': {'min_length': 1}, + } + + _attribute_map = { + 'subject': {'key': 'properties.subject', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'body': {'key': 'properties.body', 'type': 'str'}, + 'parameters': {'key': 'properties.parameters', 'type': '[EmailTemplateParametersContractProperties]'}, + } + + def __init__(self, **kwargs): + super(EmailTemplateUpdateParameters, self).__init__(**kwargs) + self.subject = kwargs.get('subject', None) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.body = kwargs.get('body', None) + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters_py3.py new file mode 100644 index 000000000000..1907e0c59b21 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/email_template_update_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EmailTemplateUpdateParameters(Model): + """Email Template update Parameters. + + :param subject: Subject of the Template. + :type subject: str + :param title: Title of the Template. + :type title: str + :param description: Description of the Email Template. + :type description: str + :param body: Email Template Body. This should be a valid XDocument + :type body: str + :param parameters: Email Template Parameter values. + :type parameters: + list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] + """ + + _validation = { + 'subject': {'max_length': 1000, 'min_length': 1}, + 'body': {'min_length': 1}, + } + + _attribute_map = { + 'subject': {'key': 'properties.subject', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'body': {'key': 'properties.body', 'type': 'str'}, + 'parameters': {'key': 'properties.parameters', 'type': '[EmailTemplateParametersContractProperties]'}, + } + + def __init__(self, *, subject: str=None, title: str=None, description: str=None, body: str=None, parameters=None, **kwargs) -> None: + super(EmailTemplateUpdateParameters, self).__init__(**kwargs) + self.subject = subject + self.title = title + self.description = description + self.body = body + self.parameters = parameters diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract.py new file mode 100644 index 000000000000..f376b6292b73 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorFieldContract(Model): + """Error Field contract. + + :param code: Property level error code. + :type code: str + :param message: Human-readable representation of property-level error. + :type message: str + :param target: Property name. + :type target: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorFieldContract, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.target = kwargs.get('target', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract_py3.py new file mode 100644 index 000000000000..f5c5e28d94d8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_field_contract_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorFieldContract(Model): + """Error Field contract. + + :param code: Property level error code. + :type code: str + :param message: Human-readable representation of property-level error. + :type message: str + :param target: Property name. + :type target: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, message: str=None, target: str=None, **kwargs) -> None: + super(ErrorFieldContract, self).__init__(**kwargs) + self.code = code + self.message = message + self.target = target diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response.py new file mode 100644 index 000000000000..cd6591f007db --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class ErrorResponse(Model): + """Error Response. + + :param code: Service-defined error code. This code serves as a sub-status + for the HTTP error code specified in the response. + :type code: str + :param message: Human-readable representation of the error. + :type message: str + :param details: The list of invalid fields send in request, in case of + validation error. + :type details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] + """ + + _attribute_map = { + 'code': {'key': 'error.code', 'type': 'str'}, + 'message': {'key': 'error.message', 'type': 'str'}, + 'details': {'key': 'error.details', 'type': '[ErrorFieldContract]'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.details = kwargs.get('details', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body.py new file mode 100644 index 000000000000..80fd246c2f30 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorResponseBody(Model): + """Error Body contract. + + :param code: Service-defined error code. This code serves as a sub-status + for the HTTP error code specified in the response. + :type code: str + :param message: Human-readable representation of the error. + :type message: str + :param details: The list of invalid fields send in request, in case of + validation error. + :type details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorFieldContract]'}, + } + + def __init__(self, **kwargs): + super(ErrorResponseBody, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body_py3.py new file mode 100644 index 000000000000..1c8dedf4ed1b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_body_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorResponseBody(Model): + """Error Body contract. + + :param code: Service-defined error code. This code serves as a sub-status + for the HTTP error code specified in the response. + :type code: str + :param message: Human-readable representation of the error. + :type message: str + :param details: The list of invalid fields send in request, in case of + validation error. + :type details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorFieldContract]'}, + } + + def __init__(self, *, code: str=None, message: str=None, details=None, **kwargs) -> None: + super(ErrorResponseBody, self).__init__(**kwargs) + self.code = code + self.message = message + self.details = details diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_py3.py new file mode 100644 index 000000000000..682261f414ec --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/error_response_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class ErrorResponse(Model): + """Error Response. + + :param code: Service-defined error code. This code serves as a sub-status + for the HTTP error code specified in the response. + :type code: str + :param message: Human-readable representation of the error. + :type message: str + :param details: The list of invalid fields send in request, in case of + validation error. + :type details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] + """ + + _attribute_map = { + 'code': {'key': 'error.code', 'type': 'str'}, + 'message': {'key': 'error.message', 'type': 'str'}, + 'details': {'key': 'error.details', 'type': '[ErrorFieldContract]'}, + } + + def __init__(self, *, code: str=None, message: str=None, details=None, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.code = code + self.message = message + self.details = details + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result.py new file mode 100644 index 000000000000..39df1288be36 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GenerateSsoUrlResult(Model): + """Generate SSO Url operations response details. + + :param value: Redirect Url containing the SSO URL value. + :type value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GenerateSsoUrlResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result_py3.py new file mode 100644 index 000000000000..bc5404c9c47f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/generate_sso_url_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GenerateSsoUrlResult(Model): + """Generate SSO Url operations response details. + + :param value: Redirect Url containing the SSO URL value. + :type value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, value: str=None, **kwargs) -> None: + super(GenerateSsoUrlResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract.py new file mode 100644 index 000000000000..89aad685c1e5 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class GroupContract(Resource): + """Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param display_name: Required. Group name. + :type display_name: str + :param description: Group description. Can contain HTML formatting tags. + :type description: str + :ivar built_in: true if the group is one of the three system groups + (Administrators, Developers, or Guests); otherwise false. + :vartype built_in: bool + :param group_contract_type: Group type. Possible values include: 'custom', + 'system', 'external' + :type group_contract_type: str or + ~azure.mgmt.apimanagement.models.GroupType + :param external_id: For external groups, this property contains the id of + the group from the external identity provider, e.g. for Azure Active + Directory `aad://.onmicrosoft.com/groups/`; + otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 1000}, + 'built_in': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'built_in': {'key': 'properties.builtIn', 'type': 'bool'}, + 'group_contract_type': {'key': 'properties.type', 'type': 'GroupType'}, + 'external_id': {'key': 'properties.externalId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GroupContract, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.built_in = None + self.group_contract_type = kwargs.get('group_contract_type', None) + self.external_id = kwargs.get('external_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_paged.py new file mode 100644 index 000000000000..04133d76cef6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class GroupContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`GroupContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[GroupContract]'} + } + + def __init__(self, *args, **kwargs): + + super(GroupContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties.py new file mode 100644 index 000000000000..a6cda94f8805 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupContractProperties(Model): + """Group contract Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. Group name. + :type display_name: str + :param description: Group description. Can contain HTML formatting tags. + :type description: str + :ivar built_in: true if the group is one of the three system groups + (Administrators, Developers, or Guests); otherwise false. + :vartype built_in: bool + :param type: Group type. Possible values include: 'custom', 'system', + 'external' + :type type: str or ~azure.mgmt.apimanagement.models.GroupType + :param external_id: For external groups, this property contains the id of + the group from the external identity provider, e.g. for Azure Active + Directory `aad://.onmicrosoft.com/groups/`; + otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 1000}, + 'built_in': {'readonly': True}, + } + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'built_in': {'key': 'builtIn', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'GroupType'}, + 'external_id': {'key': 'externalId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GroupContractProperties, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.built_in = None + self.type = kwargs.get('type', None) + self.external_id = kwargs.get('external_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties_py3.py new file mode 100644 index 000000000000..ab604b4e419b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_properties_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupContractProperties(Model): + """Group contract Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. Group name. + :type display_name: str + :param description: Group description. Can contain HTML formatting tags. + :type description: str + :ivar built_in: true if the group is one of the three system groups + (Administrators, Developers, or Guests); otherwise false. + :vartype built_in: bool + :param type: Group type. Possible values include: 'custom', 'system', + 'external' + :type type: str or ~azure.mgmt.apimanagement.models.GroupType + :param external_id: For external groups, this property contains the id of + the group from the external identity provider, e.g. for Azure Active + Directory `aad://.onmicrosoft.com/groups/`; + otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 1000}, + 'built_in': {'readonly': True}, + } + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'built_in': {'key': 'builtIn', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'GroupType'}, + 'external_id': {'key': 'externalId', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, description: str=None, type=None, external_id: str=None, **kwargs) -> None: + super(GroupContractProperties, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.built_in = None + self.type = type + self.external_id = external_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_py3.py new file mode 100644 index 000000000000..5b2c78fbc9f4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_contract_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class GroupContract(Resource): + """Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param display_name: Required. Group name. + :type display_name: str + :param description: Group description. Can contain HTML formatting tags. + :type description: str + :ivar built_in: true if the group is one of the three system groups + (Administrators, Developers, or Guests); otherwise false. + :vartype built_in: bool + :param group_contract_type: Group type. Possible values include: 'custom', + 'system', 'external' + :type group_contract_type: str or + ~azure.mgmt.apimanagement.models.GroupType + :param external_id: For external groups, this property contains the id of + the group from the external identity provider, e.g. for Azure Active + Directory `aad://.onmicrosoft.com/groups/`; + otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + 'description': {'max_length': 1000}, + 'built_in': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'built_in': {'key': 'properties.builtIn', 'type': 'bool'}, + 'group_contract_type': {'key': 'properties.type', 'type': 'GroupType'}, + 'external_id': {'key': 'properties.externalId', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, description: str=None, group_contract_type=None, external_id: str=None, **kwargs) -> None: + super(GroupContract, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.built_in = None + self.group_contract_type = group_contract_type + self.external_id = external_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters.py new file mode 100644 index 000000000000..eeb0f54e9854 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupCreateParameters(Model): + """Parameters supplied to the Create Group operation. + + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. Group name. + :type display_name: str + :param description: Group description. + :type description: str + :param type: Group type. Possible values include: 'custom', 'system', + 'external' + :type type: str or ~azure.mgmt.apimanagement.models.GroupType + :param external_id: Identifier of the external groups, this property + contains the id of the group from the external identity provider, e.g. for + Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'GroupType'}, + 'external_id': {'key': 'properties.externalId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GroupCreateParameters, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.type = kwargs.get('type', None) + self.external_id = kwargs.get('external_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters_py3.py new file mode 100644 index 000000000000..5f6f2d22763d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_create_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupCreateParameters(Model): + """Parameters supplied to the Create Group operation. + + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. Group name. + :type display_name: str + :param description: Group description. + :type description: str + :param type: Group type. Possible values include: 'custom', 'system', + 'external' + :type type: str or ~azure.mgmt.apimanagement.models.GroupType + :param external_id: Identifier of the external groups, this property + contains the id of the group from the external identity provider, e.g. for + Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'GroupType'}, + 'external_id': {'key': 'properties.externalId', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, description: str=None, type=None, external_id: str=None, **kwargs) -> None: + super(GroupCreateParameters, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.type = type + self.external_id = external_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters.py new file mode 100644 index 000000000000..34cb6c6a3b7d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupUpdateParameters(Model): + """Parameters supplied to the Update Group operation. + + :param display_name: Group name. + :type display_name: str + :param description: Group description. + :type description: str + :param type: Group type. Possible values include: 'custom', 'system', + 'external' + :type type: str or ~azure.mgmt.apimanagement.models.GroupType + :param external_id: Identifier of the external groups, this property + contains the id of the group from the external identity provider, e.g. for + Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'display_name': {'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'GroupType'}, + 'external_id': {'key': 'properties.externalId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GroupUpdateParameters, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.type = kwargs.get('type', None) + self.external_id = kwargs.get('external_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters_py3.py new file mode 100644 index 000000000000..16aee8d02966 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/group_update_parameters_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupUpdateParameters(Model): + """Parameters supplied to the Update Group operation. + + :param display_name: Group name. + :type display_name: str + :param description: Group description. + :type description: str + :param type: Group type. Possible values include: 'custom', 'system', + 'external' + :type type: str or ~azure.mgmt.apimanagement.models.GroupType + :param external_id: Identifier of the external groups, this property + contains the id of the group from the external identity provider, e.g. for + Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null. + :type external_id: str + """ + + _validation = { + 'display_name': {'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'GroupType'}, + 'external_id': {'key': 'properties.externalId', 'type': 'str'}, + } + + def __init__(self, *, display_name: str=None, description: str=None, type=None, external_id: str=None, **kwargs) -> None: + super(GroupUpdateParameters, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.type = type + self.external_id = external_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration.py new file mode 100644 index 000000000000..0c0dcfc232bb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HostnameConfiguration(Model): + """Custom hostname configuration. + + All required parameters must be populated in order to send to Azure. + + :param type: Required. Hostname type. Possible values include: 'Proxy', + 'Portal', 'Management', 'Scm', 'DeveloperPortal' + :type type: str or ~azure.mgmt.apimanagement.models.HostnameType + :param host_name: Required. Hostname to configure on the Api Management + service. + :type host_name: str + :param key_vault_id: Url to the KeyVault Secret containing the Ssl + Certificate. If absolute Url containing version is provided, auto-update + of ssl certificate will not work. This requires Api Management service to + be configured with MSI. The secret should be of type + *application/x-pkcs12* + :type key_vault_id: str + :param encoded_certificate: Base64 Encoded certificate. + :type encoded_certificate: str + :param certificate_password: Certificate Password. + :type certificate_password: str + :param default_ssl_binding: Specify true to setup the certificate + associated with this Hostname as the Default SSL Certificate. If a client + does not send the SNI header, then this will be the certificate that will + be challenged. The property is useful if a service has multiple custom + hostname enabled and it needs to decide on the default ssl certificate. + The setting only applied to Proxy Hostname Type. Default value: False . + :type default_ssl_binding: bool + :param negotiate_client_certificate: Specify true to always negotiate + client certificate on the hostname. Default Value is false. Default value: + False . + :type negotiate_client_certificate: bool + :param certificate: Certificate information. + :type certificate: ~azure.mgmt.apimanagement.models.CertificateInformation + """ + + _validation = { + 'type': {'required': True}, + 'host_name': {'required': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'host_name': {'key': 'hostName', 'type': 'str'}, + 'key_vault_id': {'key': 'keyVaultId', 'type': 'str'}, + 'encoded_certificate': {'key': 'encodedCertificate', 'type': 'str'}, + 'certificate_password': {'key': 'certificatePassword', 'type': 'str'}, + 'default_ssl_binding': {'key': 'defaultSslBinding', 'type': 'bool'}, + 'negotiate_client_certificate': {'key': 'negotiateClientCertificate', 'type': 'bool'}, + 'certificate': {'key': 'certificate', 'type': 'CertificateInformation'}, + } + + def __init__(self, **kwargs): + super(HostnameConfiguration, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.host_name = kwargs.get('host_name', None) + self.key_vault_id = kwargs.get('key_vault_id', None) + self.encoded_certificate = kwargs.get('encoded_certificate', None) + self.certificate_password = kwargs.get('certificate_password', None) + self.default_ssl_binding = kwargs.get('default_ssl_binding', False) + self.negotiate_client_certificate = kwargs.get('negotiate_client_certificate', False) + self.certificate = kwargs.get('certificate', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration_py3.py new file mode 100644 index 000000000000..8770649147a2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/hostname_configuration_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HostnameConfiguration(Model): + """Custom hostname configuration. + + All required parameters must be populated in order to send to Azure. + + :param type: Required. Hostname type. Possible values include: 'Proxy', + 'Portal', 'Management', 'Scm', 'DeveloperPortal' + :type type: str or ~azure.mgmt.apimanagement.models.HostnameType + :param host_name: Required. Hostname to configure on the Api Management + service. + :type host_name: str + :param key_vault_id: Url to the KeyVault Secret containing the Ssl + Certificate. If absolute Url containing version is provided, auto-update + of ssl certificate will not work. This requires Api Management service to + be configured with MSI. The secret should be of type + *application/x-pkcs12* + :type key_vault_id: str + :param encoded_certificate: Base64 Encoded certificate. + :type encoded_certificate: str + :param certificate_password: Certificate Password. + :type certificate_password: str + :param default_ssl_binding: Specify true to setup the certificate + associated with this Hostname as the Default SSL Certificate. If a client + does not send the SNI header, then this will be the certificate that will + be challenged. The property is useful if a service has multiple custom + hostname enabled and it needs to decide on the default ssl certificate. + The setting only applied to Proxy Hostname Type. Default value: False . + :type default_ssl_binding: bool + :param negotiate_client_certificate: Specify true to always negotiate + client certificate on the hostname. Default Value is false. Default value: + False . + :type negotiate_client_certificate: bool + :param certificate: Certificate information. + :type certificate: ~azure.mgmt.apimanagement.models.CertificateInformation + """ + + _validation = { + 'type': {'required': True}, + 'host_name': {'required': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'host_name': {'key': 'hostName', 'type': 'str'}, + 'key_vault_id': {'key': 'keyVaultId', 'type': 'str'}, + 'encoded_certificate': {'key': 'encodedCertificate', 'type': 'str'}, + 'certificate_password': {'key': 'certificatePassword', 'type': 'str'}, + 'default_ssl_binding': {'key': 'defaultSslBinding', 'type': 'bool'}, + 'negotiate_client_certificate': {'key': 'negotiateClientCertificate', 'type': 'bool'}, + 'certificate': {'key': 'certificate', 'type': 'CertificateInformation'}, + } + + def __init__(self, *, type, host_name: str, key_vault_id: str=None, encoded_certificate: str=None, certificate_password: str=None, default_ssl_binding: bool=False, negotiate_client_certificate: bool=False, certificate=None, **kwargs) -> None: + super(HostnameConfiguration, self).__init__(**kwargs) + self.type = type + self.host_name = host_name + self.key_vault_id = key_vault_id + self.encoded_certificate = encoded_certificate + self.certificate_password = certificate_password + self.default_ssl_binding = default_ssl_binding + self.negotiate_client_certificate = negotiate_client_certificate + self.certificate = certificate diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic.py new file mode 100644 index 000000000000..2c2651f31bb8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HttpMessageDiagnostic(Model): + """Http message diagnostic settings. + + :param headers: Array of HTTP Headers to log. + :type headers: list[str] + :param body: Body logging settings. + :type body: ~azure.mgmt.apimanagement.models.BodyDiagnosticSettings + """ + + _attribute_map = { + 'headers': {'key': 'headers', 'type': '[str]'}, + 'body': {'key': 'body', 'type': 'BodyDiagnosticSettings'}, + } + + def __init__(self, **kwargs): + super(HttpMessageDiagnostic, self).__init__(**kwargs) + self.headers = kwargs.get('headers', None) + self.body = kwargs.get('body', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic_py3.py new file mode 100644 index 000000000000..28171eee4cd7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/http_message_diagnostic_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HttpMessageDiagnostic(Model): + """Http message diagnostic settings. + + :param headers: Array of HTTP Headers to log. + :type headers: list[str] + :param body: Body logging settings. + :type body: ~azure.mgmt.apimanagement.models.BodyDiagnosticSettings + """ + + _attribute_map = { + 'headers': {'key': 'headers', 'type': '[str]'}, + 'body': {'key': 'body', 'type': 'BodyDiagnosticSettings'}, + } + + def __init__(self, *, headers=None, body=None, **kwargs) -> None: + super(HttpMessageDiagnostic, self).__init__(**kwargs) + self.headers = headers + self.body = body diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters.py new file mode 100644 index 000000000000..0db06fcfcf1e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentityProviderBaseParameters(Model): + """Identity Provider Base Parameter Properties. + + :param type: Identity Provider Type identifier. Possible values include: + 'facebook', 'google', 'microsoft', 'twitter', 'aad', 'aadB2C' + :type type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType + :param allowed_tenants: List of Allowed Tenants when configuring Azure + Active Directory login. + :type allowed_tenants: list[str] + :param authority: OpenID Connect discovery endpoint hostname for AAD or + AAD B2C. + :type authority: str + :param signup_policy_name: Signup Policy Name. Only applies to AAD B2C + Identity Provider. + :type signup_policy_name: str + :param signin_policy_name: Signin Policy Name. Only applies to AAD B2C + Identity Provider. + :type signin_policy_name: str + :param profile_editing_policy_name: Profile Editing Policy Name. Only + applies to AAD B2C Identity Provider. + :type profile_editing_policy_name: str + :param password_reset_policy_name: Password Reset Policy Name. Only + applies to AAD B2C Identity Provider. + :type password_reset_policy_name: str + """ + + _validation = { + 'allowed_tenants': {'max_items': 32}, + 'signup_policy_name': {'min_length': 1}, + 'signin_policy_name': {'min_length': 1}, + 'profile_editing_policy_name': {'min_length': 1}, + 'password_reset_policy_name': {'min_length': 1}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'allowed_tenants': {'key': 'allowedTenants', 'type': '[str]'}, + 'authority': {'key': 'authority', 'type': 'str'}, + 'signup_policy_name': {'key': 'signupPolicyName', 'type': 'str'}, + 'signin_policy_name': {'key': 'signinPolicyName', 'type': 'str'}, + 'profile_editing_policy_name': {'key': 'profileEditingPolicyName', 'type': 'str'}, + 'password_reset_policy_name': {'key': 'passwordResetPolicyName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IdentityProviderBaseParameters, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.allowed_tenants = kwargs.get('allowed_tenants', None) + self.authority = kwargs.get('authority', None) + self.signup_policy_name = kwargs.get('signup_policy_name', None) + self.signin_policy_name = kwargs.get('signin_policy_name', None) + self.profile_editing_policy_name = kwargs.get('profile_editing_policy_name', None) + self.password_reset_policy_name = kwargs.get('password_reset_policy_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters_py3.py new file mode 100644 index 000000000000..e29979994684 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_base_parameters_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentityProviderBaseParameters(Model): + """Identity Provider Base Parameter Properties. + + :param type: Identity Provider Type identifier. Possible values include: + 'facebook', 'google', 'microsoft', 'twitter', 'aad', 'aadB2C' + :type type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType + :param allowed_tenants: List of Allowed Tenants when configuring Azure + Active Directory login. + :type allowed_tenants: list[str] + :param authority: OpenID Connect discovery endpoint hostname for AAD or + AAD B2C. + :type authority: str + :param signup_policy_name: Signup Policy Name. Only applies to AAD B2C + Identity Provider. + :type signup_policy_name: str + :param signin_policy_name: Signin Policy Name. Only applies to AAD B2C + Identity Provider. + :type signin_policy_name: str + :param profile_editing_policy_name: Profile Editing Policy Name. Only + applies to AAD B2C Identity Provider. + :type profile_editing_policy_name: str + :param password_reset_policy_name: Password Reset Policy Name. Only + applies to AAD B2C Identity Provider. + :type password_reset_policy_name: str + """ + + _validation = { + 'allowed_tenants': {'max_items': 32}, + 'signup_policy_name': {'min_length': 1}, + 'signin_policy_name': {'min_length': 1}, + 'profile_editing_policy_name': {'min_length': 1}, + 'password_reset_policy_name': {'min_length': 1}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'allowed_tenants': {'key': 'allowedTenants', 'type': '[str]'}, + 'authority': {'key': 'authority', 'type': 'str'}, + 'signup_policy_name': {'key': 'signupPolicyName', 'type': 'str'}, + 'signin_policy_name': {'key': 'signinPolicyName', 'type': 'str'}, + 'profile_editing_policy_name': {'key': 'profileEditingPolicyName', 'type': 'str'}, + 'password_reset_policy_name': {'key': 'passwordResetPolicyName', 'type': 'str'}, + } + + def __init__(self, *, type=None, allowed_tenants=None, authority: str=None, signup_policy_name: str=None, signin_policy_name: str=None, profile_editing_policy_name: str=None, password_reset_policy_name: str=None, **kwargs) -> None: + super(IdentityProviderBaseParameters, self).__init__(**kwargs) + self.type = type + self.allowed_tenants = allowed_tenants + self.authority = authority + self.signup_policy_name = signup_policy_name + self.signin_policy_name = signin_policy_name + self.profile_editing_policy_name = profile_editing_policy_name + self.password_reset_policy_name = password_reset_policy_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract.py new file mode 100644 index 000000000000..6acc2feb7d52 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class IdentityProviderContract(Resource): + """Identity Provider details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param identity_provider_contract_type: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_contract_type: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param allowed_tenants: List of Allowed Tenants when configuring Azure + Active Directory login. + :type allowed_tenants: list[str] + :param authority: OpenID Connect discovery endpoint hostname for AAD or + AAD B2C. + :type authority: str + :param signup_policy_name: Signup Policy Name. Only applies to AAD B2C + Identity Provider. + :type signup_policy_name: str + :param signin_policy_name: Signin Policy Name. Only applies to AAD B2C + Identity Provider. + :type signin_policy_name: str + :param profile_editing_policy_name: Profile Editing Policy Name. Only + applies to AAD B2C Identity Provider. + :type profile_editing_policy_name: str + :param password_reset_policy_name: Password Reset Policy Name. Only + applies to AAD B2C Identity Provider. + :type password_reset_policy_name: str + :param client_id: Required. Client Id of the Application in the external + Identity Provider. It is App ID for Facebook login, Client ID for Google + login, App ID for Microsoft. + :type client_id: str + :param client_secret: Required. Client secret of the Application in + external Identity Provider, used to authenticate login request. For + example, it is App Secret for Facebook login, API Key for Google login, + Public Key for Microsoft. + :type client_secret: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'allowed_tenants': {'max_items': 32}, + 'signup_policy_name': {'min_length': 1}, + 'signin_policy_name': {'min_length': 1}, + 'profile_editing_policy_name': {'min_length': 1}, + 'password_reset_policy_name': {'min_length': 1}, + 'client_id': {'required': True, 'min_length': 1}, + 'client_secret': {'required': True, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'identity_provider_contract_type': {'key': 'properties.type', 'type': 'str'}, + 'allowed_tenants': {'key': 'properties.allowedTenants', 'type': '[str]'}, + 'authority': {'key': 'properties.authority', 'type': 'str'}, + 'signup_policy_name': {'key': 'properties.signupPolicyName', 'type': 'str'}, + 'signin_policy_name': {'key': 'properties.signinPolicyName', 'type': 'str'}, + 'profile_editing_policy_name': {'key': 'properties.profileEditingPolicyName', 'type': 'str'}, + 'password_reset_policy_name': {'key': 'properties.passwordResetPolicyName', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IdentityProviderContract, self).__init__(**kwargs) + self.identity_provider_contract_type = kwargs.get('identity_provider_contract_type', None) + self.allowed_tenants = kwargs.get('allowed_tenants', None) + self.authority = kwargs.get('authority', None) + self.signup_policy_name = kwargs.get('signup_policy_name', None) + self.signin_policy_name = kwargs.get('signin_policy_name', None) + self.profile_editing_policy_name = kwargs.get('profile_editing_policy_name', None) + self.password_reset_policy_name = kwargs.get('password_reset_policy_name', None) + self.client_id = kwargs.get('client_id', None) + self.client_secret = kwargs.get('client_secret', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_paged.py new file mode 100644 index 000000000000..4c47b9094fc3 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class IdentityProviderContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`IdentityProviderContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[IdentityProviderContract]'} + } + + def __init__(self, *args, **kwargs): + + super(IdentityProviderContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_py3.py new file mode 100644 index 000000000000..d27cad4a2691 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_contract_py3.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class IdentityProviderContract(Resource): + """Identity Provider details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param identity_provider_contract_type: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_contract_type: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param allowed_tenants: List of Allowed Tenants when configuring Azure + Active Directory login. + :type allowed_tenants: list[str] + :param authority: OpenID Connect discovery endpoint hostname for AAD or + AAD B2C. + :type authority: str + :param signup_policy_name: Signup Policy Name. Only applies to AAD B2C + Identity Provider. + :type signup_policy_name: str + :param signin_policy_name: Signin Policy Name. Only applies to AAD B2C + Identity Provider. + :type signin_policy_name: str + :param profile_editing_policy_name: Profile Editing Policy Name. Only + applies to AAD B2C Identity Provider. + :type profile_editing_policy_name: str + :param password_reset_policy_name: Password Reset Policy Name. Only + applies to AAD B2C Identity Provider. + :type password_reset_policy_name: str + :param client_id: Required. Client Id of the Application in the external + Identity Provider. It is App ID for Facebook login, Client ID for Google + login, App ID for Microsoft. + :type client_id: str + :param client_secret: Required. Client secret of the Application in + external Identity Provider, used to authenticate login request. For + example, it is App Secret for Facebook login, API Key for Google login, + Public Key for Microsoft. + :type client_secret: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'allowed_tenants': {'max_items': 32}, + 'signup_policy_name': {'min_length': 1}, + 'signin_policy_name': {'min_length': 1}, + 'profile_editing_policy_name': {'min_length': 1}, + 'password_reset_policy_name': {'min_length': 1}, + 'client_id': {'required': True, 'min_length': 1}, + 'client_secret': {'required': True, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'identity_provider_contract_type': {'key': 'properties.type', 'type': 'str'}, + 'allowed_tenants': {'key': 'properties.allowedTenants', 'type': '[str]'}, + 'authority': {'key': 'properties.authority', 'type': 'str'}, + 'signup_policy_name': {'key': 'properties.signupPolicyName', 'type': 'str'}, + 'signin_policy_name': {'key': 'properties.signinPolicyName', 'type': 'str'}, + 'profile_editing_policy_name': {'key': 'properties.profileEditingPolicyName', 'type': 'str'}, + 'password_reset_policy_name': {'key': 'properties.passwordResetPolicyName', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, *, client_id: str, client_secret: str, identity_provider_contract_type=None, allowed_tenants=None, authority: str=None, signup_policy_name: str=None, signin_policy_name: str=None, profile_editing_policy_name: str=None, password_reset_policy_name: str=None, **kwargs) -> None: + super(IdentityProviderContract, self).__init__(**kwargs) + self.identity_provider_contract_type = identity_provider_contract_type + self.allowed_tenants = allowed_tenants + self.authority = authority + self.signup_policy_name = signup_policy_name + self.signin_policy_name = signin_policy_name + self.profile_editing_policy_name = profile_editing_policy_name + self.password_reset_policy_name = password_reset_policy_name + self.client_id = client_id + self.client_secret = client_secret diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters.py new file mode 100644 index 000000000000..ef23abf0a398 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentityProviderUpdateParameters(Model): + """Parameters supplied to update Identity Provider. + + :param type: Identity Provider Type identifier. Possible values include: + 'facebook', 'google', 'microsoft', 'twitter', 'aad', 'aadB2C' + :type type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType + :param allowed_tenants: List of Allowed Tenants when configuring Azure + Active Directory login. + :type allowed_tenants: list[str] + :param authority: OpenID Connect discovery endpoint hostname for AAD or + AAD B2C. + :type authority: str + :param signup_policy_name: Signup Policy Name. Only applies to AAD B2C + Identity Provider. + :type signup_policy_name: str + :param signin_policy_name: Signin Policy Name. Only applies to AAD B2C + Identity Provider. + :type signin_policy_name: str + :param profile_editing_policy_name: Profile Editing Policy Name. Only + applies to AAD B2C Identity Provider. + :type profile_editing_policy_name: str + :param password_reset_policy_name: Password Reset Policy Name. Only + applies to AAD B2C Identity Provider. + :type password_reset_policy_name: str + :param client_id: Client Id of the Application in the external Identity + Provider. It is App ID for Facebook login, Client ID for Google login, App + ID for Microsoft. + :type client_id: str + :param client_secret: Client secret of the Application in external + Identity Provider, used to authenticate login request. For example, it is + App Secret for Facebook login, API Key for Google login, Public Key for + Microsoft. + :type client_secret: str + """ + + _validation = { + 'allowed_tenants': {'max_items': 32}, + 'signup_policy_name': {'min_length': 1}, + 'signin_policy_name': {'min_length': 1}, + 'profile_editing_policy_name': {'min_length': 1}, + 'password_reset_policy_name': {'min_length': 1}, + 'client_id': {'min_length': 1}, + 'client_secret': {'min_length': 1}, + } + + _attribute_map = { + 'type': {'key': 'properties.type', 'type': 'str'}, + 'allowed_tenants': {'key': 'properties.allowedTenants', 'type': '[str]'}, + 'authority': {'key': 'properties.authority', 'type': 'str'}, + 'signup_policy_name': {'key': 'properties.signupPolicyName', 'type': 'str'}, + 'signin_policy_name': {'key': 'properties.signinPolicyName', 'type': 'str'}, + 'profile_editing_policy_name': {'key': 'properties.profileEditingPolicyName', 'type': 'str'}, + 'password_reset_policy_name': {'key': 'properties.passwordResetPolicyName', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IdentityProviderUpdateParameters, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.allowed_tenants = kwargs.get('allowed_tenants', None) + self.authority = kwargs.get('authority', None) + self.signup_policy_name = kwargs.get('signup_policy_name', None) + self.signin_policy_name = kwargs.get('signin_policy_name', None) + self.profile_editing_policy_name = kwargs.get('profile_editing_policy_name', None) + self.password_reset_policy_name = kwargs.get('password_reset_policy_name', None) + self.client_id = kwargs.get('client_id', None) + self.client_secret = kwargs.get('client_secret', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters_py3.py new file mode 100644 index 000000000000..2cad5892a326 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/identity_provider_update_parameters_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentityProviderUpdateParameters(Model): + """Parameters supplied to update Identity Provider. + + :param type: Identity Provider Type identifier. Possible values include: + 'facebook', 'google', 'microsoft', 'twitter', 'aad', 'aadB2C' + :type type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType + :param allowed_tenants: List of Allowed Tenants when configuring Azure + Active Directory login. + :type allowed_tenants: list[str] + :param authority: OpenID Connect discovery endpoint hostname for AAD or + AAD B2C. + :type authority: str + :param signup_policy_name: Signup Policy Name. Only applies to AAD B2C + Identity Provider. + :type signup_policy_name: str + :param signin_policy_name: Signin Policy Name. Only applies to AAD B2C + Identity Provider. + :type signin_policy_name: str + :param profile_editing_policy_name: Profile Editing Policy Name. Only + applies to AAD B2C Identity Provider. + :type profile_editing_policy_name: str + :param password_reset_policy_name: Password Reset Policy Name. Only + applies to AAD B2C Identity Provider. + :type password_reset_policy_name: str + :param client_id: Client Id of the Application in the external Identity + Provider. It is App ID for Facebook login, Client ID for Google login, App + ID for Microsoft. + :type client_id: str + :param client_secret: Client secret of the Application in external + Identity Provider, used to authenticate login request. For example, it is + App Secret for Facebook login, API Key for Google login, Public Key for + Microsoft. + :type client_secret: str + """ + + _validation = { + 'allowed_tenants': {'max_items': 32}, + 'signup_policy_name': {'min_length': 1}, + 'signin_policy_name': {'min_length': 1}, + 'profile_editing_policy_name': {'min_length': 1}, + 'password_reset_policy_name': {'min_length': 1}, + 'client_id': {'min_length': 1}, + 'client_secret': {'min_length': 1}, + } + + _attribute_map = { + 'type': {'key': 'properties.type', 'type': 'str'}, + 'allowed_tenants': {'key': 'properties.allowedTenants', 'type': '[str]'}, + 'authority': {'key': 'properties.authority', 'type': 'str'}, + 'signup_policy_name': {'key': 'properties.signupPolicyName', 'type': 'str'}, + 'signin_policy_name': {'key': 'properties.signinPolicyName', 'type': 'str'}, + 'profile_editing_policy_name': {'key': 'properties.profileEditingPolicyName', 'type': 'str'}, + 'password_reset_policy_name': {'key': 'properties.passwordResetPolicyName', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, *, type=None, allowed_tenants=None, authority: str=None, signup_policy_name: str=None, signin_policy_name: str=None, profile_editing_policy_name: str=None, password_reset_policy_name: str=None, client_id: str=None, client_secret: str=None, **kwargs) -> None: + super(IdentityProviderUpdateParameters, self).__init__(**kwargs) + self.type = type + self.allowed_tenants = allowed_tenants + self.authority = authority + self.signup_policy_name = signup_policy_name + self.signin_policy_name = signin_policy_name + self.profile_editing_policy_name = profile_editing_policy_name + self.password_reset_policy_name = password_reset_policy_name + self.client_id = client_id + self.client_secret = client_secret diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract.py new file mode 100644 index 000000000000..3b45cdf7a4a3 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class IssueAttachmentContract(Resource): + """Issue Attachment Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param title: Required. Filename by which the binary data will be saved. + :type title: str + :param content_format: Required. Either 'link' if content is provided via + an HTTP link or the MIME type of the Base64-encoded binary data provided + in the 'content' property. + :type content_format: str + :param content: Required. An HTTP link or Base64-encoded binary data. + :type content: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'required': True}, + 'content_format': {'required': True}, + 'content': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'content_format': {'key': 'properties.contentFormat', 'type': 'str'}, + 'content': {'key': 'properties.content', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssueAttachmentContract, self).__init__(**kwargs) + self.title = kwargs.get('title', None) + self.content_format = kwargs.get('content_format', None) + self.content = kwargs.get('content', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_paged.py new file mode 100644 index 000000000000..31f08fe12743 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class IssueAttachmentContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`IssueAttachmentContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[IssueAttachmentContract]'} + } + + def __init__(self, *args, **kwargs): + + super(IssueAttachmentContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_py3.py new file mode 100644 index 000000000000..6eda14e9e009 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_attachment_contract_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class IssueAttachmentContract(Resource): + """Issue Attachment Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param title: Required. Filename by which the binary data will be saved. + :type title: str + :param content_format: Required. Either 'link' if content is provided via + an HTTP link or the MIME type of the Base64-encoded binary data provided + in the 'content' property. + :type content_format: str + :param content: Required. An HTTP link or Base64-encoded binary data. + :type content: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'required': True}, + 'content_format': {'required': True}, + 'content': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'content_format': {'key': 'properties.contentFormat', 'type': 'str'}, + 'content': {'key': 'properties.content', 'type': 'str'}, + } + + def __init__(self, *, title: str, content_format: str, content: str, **kwargs) -> None: + super(IssueAttachmentContract, self).__init__(**kwargs) + self.title = title + self.content_format = content_format + self.content = content diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract.py new file mode 100644 index 000000000000..edcad5812c6e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class IssueCommentContract(Resource): + """Issue Comment Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param text: Required. Comment text. + :type text: str + :param created_date: Date and time when the comment was created. + :type created_date: datetime + :param user_id: Required. A resource identifier for the user who left the + comment. + :type user_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'text': {'required': True}, + 'user_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'text': {'key': 'properties.text', 'type': 'str'}, + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssueCommentContract, self).__init__(**kwargs) + self.text = kwargs.get('text', None) + self.created_date = kwargs.get('created_date', None) + self.user_id = kwargs.get('user_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_paged.py new file mode 100644 index 000000000000..4dc920095266 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class IssueCommentContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`IssueCommentContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[IssueCommentContract]'} + } + + def __init__(self, *args, **kwargs): + + super(IssueCommentContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_py3.py new file mode 100644 index 000000000000..06b355047a92 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_comment_contract_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class IssueCommentContract(Resource): + """Issue Comment Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param text: Required. Comment text. + :type text: str + :param created_date: Date and time when the comment was created. + :type created_date: datetime + :param user_id: Required. A resource identifier for the user who left the + comment. + :type user_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'text': {'required': True}, + 'user_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'text': {'key': 'properties.text', 'type': 'str'}, + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, *, text: str, user_id: str, created_date=None, **kwargs) -> None: + super(IssueCommentContract, self).__init__(**kwargs) + self.text = text + self.created_date = created_date + self.user_id = user_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract.py new file mode 100644 index 000000000000..7e9a0bb26e16 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class IssueContract(Resource): + """Issue Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param created_date: Date and time when the issue was created. + :type created_date: datetime + :param state: Status of the issue. Possible values include: 'proposed', + 'open', 'removed', 'resolved', 'closed' + :type state: str or ~azure.mgmt.apimanagement.models.State + :param api_id: A resource identifier for the API the issue was created + for. + :type api_id: str + :param title: Required. The issue title. + :type title: str + :param description: Required. Text describing the issue. + :type description: str + :param user_id: Required. A resource identifier for the user created the + issue. + :type user_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'required': True}, + 'description': {'required': True}, + 'user_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'api_id': {'key': 'properties.apiId', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssueContract, self).__init__(**kwargs) + self.created_date = kwargs.get('created_date', None) + self.state = kwargs.get('state', None) + self.api_id = kwargs.get('api_id', None) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.user_id = kwargs.get('user_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties.py new file mode 100644 index 000000000000..8bf825f0f0de --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssueContractBaseProperties(Model): + """Issue contract Base Properties. + + :param created_date: Date and time when the issue was created. + :type created_date: datetime + :param state: Status of the issue. Possible values include: 'proposed', + 'open', 'removed', 'resolved', 'closed' + :type state: str or ~azure.mgmt.apimanagement.models.State + :param api_id: A resource identifier for the API the issue was created + for. + :type api_id: str + """ + + _attribute_map = { + 'created_date': {'key': 'createdDate', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'str'}, + 'api_id': {'key': 'apiId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssueContractBaseProperties, self).__init__(**kwargs) + self.created_date = kwargs.get('created_date', None) + self.state = kwargs.get('state', None) + self.api_id = kwargs.get('api_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties_py3.py new file mode 100644 index 000000000000..30126d7f0845 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_base_properties_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssueContractBaseProperties(Model): + """Issue contract Base Properties. + + :param created_date: Date and time when the issue was created. + :type created_date: datetime + :param state: Status of the issue. Possible values include: 'proposed', + 'open', 'removed', 'resolved', 'closed' + :type state: str or ~azure.mgmt.apimanagement.models.State + :param api_id: A resource identifier for the API the issue was created + for. + :type api_id: str + """ + + _attribute_map = { + 'created_date': {'key': 'createdDate', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'str'}, + 'api_id': {'key': 'apiId', 'type': 'str'}, + } + + def __init__(self, *, created_date=None, state=None, api_id: str=None, **kwargs) -> None: + super(IssueContractBaseProperties, self).__init__(**kwargs) + self.created_date = created_date + self.state = state + self.api_id = api_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_paged.py new file mode 100644 index 000000000000..fd9375bcab14 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class IssueContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`IssueContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[IssueContract]'} + } + + def __init__(self, *args, **kwargs): + + super(IssueContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_py3.py new file mode 100644 index 000000000000..f635214f5b15 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_contract_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class IssueContract(Resource): + """Issue Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param created_date: Date and time when the issue was created. + :type created_date: datetime + :param state: Status of the issue. Possible values include: 'proposed', + 'open', 'removed', 'resolved', 'closed' + :type state: str or ~azure.mgmt.apimanagement.models.State + :param api_id: A resource identifier for the API the issue was created + for. + :type api_id: str + :param title: Required. The issue title. + :type title: str + :param description: Required. Text describing the issue. + :type description: str + :param user_id: Required. A resource identifier for the user created the + issue. + :type user_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'required': True}, + 'description': {'required': True}, + 'user_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'api_id': {'key': 'properties.apiId', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, *, title: str, description: str, user_id: str, created_date=None, state=None, api_id: str=None, **kwargs) -> None: + super(IssueContract, self).__init__(**kwargs) + self.created_date = created_date + self.state = state + self.api_id = api_id + self.title = title + self.description = description + self.user_id = user_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract.py new file mode 100644 index 000000000000..cd0c09f71fe8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssueUpdateContract(Model): + """Issue update Parameters. + + :param created_date: Date and time when the issue was created. + :type created_date: datetime + :param state: Status of the issue. Possible values include: 'proposed', + 'open', 'removed', 'resolved', 'closed' + :type state: str or ~azure.mgmt.apimanagement.models.State + :param api_id: A resource identifier for the API the issue was created + for. + :type api_id: str + :param title: The issue title. + :type title: str + :param description: Text describing the issue. + :type description: str + :param user_id: A resource identifier for the user created the issue. + :type user_id: str + """ + + _attribute_map = { + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'api_id': {'key': 'properties.apiId', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssueUpdateContract, self).__init__(**kwargs) + self.created_date = kwargs.get('created_date', None) + self.state = kwargs.get('state', None) + self.api_id = kwargs.get('api_id', None) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.user_id = kwargs.get('user_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract_py3.py new file mode 100644 index 000000000000..adaf82829d94 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/issue_update_contract_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssueUpdateContract(Model): + """Issue update Parameters. + + :param created_date: Date and time when the issue was created. + :type created_date: datetime + :param state: Status of the issue. Possible values include: 'proposed', + 'open', 'removed', 'resolved', 'closed' + :type state: str or ~azure.mgmt.apimanagement.models.State + :param api_id: A resource identifier for the API the issue was created + for. + :type api_id: str + :param title: The issue title. + :type title: str + :param description: Text describing the issue. + :type description: str + :param user_id: A resource identifier for the user created the issue. + :type user_id: str + """ + + _attribute_map = { + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'api_id': {'key': 'properties.apiId', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, *, created_date=None, state=None, api_id: str=None, title: str=None, description: str=None, user_id: str=None, **kwargs) -> None: + super(IssueUpdateContract, self).__init__(**kwargs) + self.created_date = created_date + self.state = state + self.api_id = api_id + self.title = title + self.description = description + self.user_id = user_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract.py new file mode 100644 index 000000000000..16213cac73bb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class LoggerContract(Resource): + """Logger details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param logger_type: Required. Logger type. Possible values include: + 'azureEventHub', 'applicationInsights' + :type logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType + :param description: Logger description. + :type description: str + :param credentials: Required. The name and SendRule connection string of + the event hub for azureEventHub logger. + Instrumentation key for applicationInsights logger. + :type credentials: dict[str, str] + :param is_buffered: Whether records are buffered in the logger before + publishing. Default is assumed to be true. + :type is_buffered: bool + :param resource_id: Azure Resource Id of a log target (either Azure Event + Hub resource or Azure Application Insights resource). + :type resource_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'logger_type': {'required': True}, + 'description': {'max_length': 256}, + 'credentials': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'logger_type': {'key': 'properties.loggerType', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'credentials': {'key': 'properties.credentials', 'type': '{str}'}, + 'is_buffered': {'key': 'properties.isBuffered', 'type': 'bool'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoggerContract, self).__init__(**kwargs) + self.logger_type = kwargs.get('logger_type', None) + self.description = kwargs.get('description', None) + self.credentials = kwargs.get('credentials', None) + self.is_buffered = kwargs.get('is_buffered', None) + self.resource_id = kwargs.get('resource_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_paged.py new file mode 100644 index 000000000000..e43659aa7736 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class LoggerContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`LoggerContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoggerContract]'} + } + + def __init__(self, *args, **kwargs): + + super(LoggerContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_py3.py new file mode 100644 index 000000000000..59ceb33e5ea3 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_contract_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class LoggerContract(Resource): + """Logger details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param logger_type: Required. Logger type. Possible values include: + 'azureEventHub', 'applicationInsights' + :type logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType + :param description: Logger description. + :type description: str + :param credentials: Required. The name and SendRule connection string of + the event hub for azureEventHub logger. + Instrumentation key for applicationInsights logger. + :type credentials: dict[str, str] + :param is_buffered: Whether records are buffered in the logger before + publishing. Default is assumed to be true. + :type is_buffered: bool + :param resource_id: Azure Resource Id of a log target (either Azure Event + Hub resource or Azure Application Insights resource). + :type resource_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'logger_type': {'required': True}, + 'description': {'max_length': 256}, + 'credentials': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'logger_type': {'key': 'properties.loggerType', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'credentials': {'key': 'properties.credentials', 'type': '{str}'}, + 'is_buffered': {'key': 'properties.isBuffered', 'type': 'bool'}, + 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, + } + + def __init__(self, *, logger_type, credentials, description: str=None, is_buffered: bool=None, resource_id: str=None, **kwargs) -> None: + super(LoggerContract, self).__init__(**kwargs) + self.logger_type = logger_type + self.description = description + self.credentials = credentials + self.is_buffered = is_buffered + self.resource_id = resource_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract.py new file mode 100644 index 000000000000..addfa18e243f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LoggerUpdateContract(Model): + """Logger update contract. + + :param logger_type: Logger type. Possible values include: 'azureEventHub', + 'applicationInsights' + :type logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType + :param description: Logger description. + :type description: str + :param credentials: Logger credentials. + :type credentials: dict[str, str] + :param is_buffered: Whether records are buffered in the logger before + publishing. Default is assumed to be true. + :type is_buffered: bool + """ + + _attribute_map = { + 'logger_type': {'key': 'properties.loggerType', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'credentials': {'key': 'properties.credentials', 'type': '{str}'}, + 'is_buffered': {'key': 'properties.isBuffered', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(LoggerUpdateContract, self).__init__(**kwargs) + self.logger_type = kwargs.get('logger_type', None) + self.description = kwargs.get('description', None) + self.credentials = kwargs.get('credentials', None) + self.is_buffered = kwargs.get('is_buffered', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract_py3.py new file mode 100644 index 000000000000..c87234102e67 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/logger_update_contract_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LoggerUpdateContract(Model): + """Logger update contract. + + :param logger_type: Logger type. Possible values include: 'azureEventHub', + 'applicationInsights' + :type logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType + :param description: Logger description. + :type description: str + :param credentials: Logger credentials. + :type credentials: dict[str, str] + :param is_buffered: Whether records are buffered in the logger before + publishing. Default is assumed to be true. + :type is_buffered: bool + """ + + _attribute_map = { + 'logger_type': {'key': 'properties.loggerType', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'credentials': {'key': 'properties.credentials', 'type': '{str}'}, + 'is_buffered': {'key': 'properties.isBuffered', 'type': 'bool'}, + } + + def __init__(self, *, logger_type=None, description: str=None, credentials=None, is_buffered: bool=None, **kwargs) -> None: + super(LoggerUpdateContract, self).__init__(**kwargs) + self.logger_type = logger_type + self.description = description + self.credentials = credentials + self.is_buffered = is_buffered diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract.py new file mode 100644 index 000000000000..93d8cadb8452 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkStatusContract(Model): + """Network Status details. + + All required parameters must be populated in order to send to Azure. + + :param dns_servers: Required. Gets the list of DNS servers IPV4 addresses. + :type dns_servers: list[str] + :param connectivity_status: Required. Gets the list of Connectivity Status + to the Resources on which the service depends upon. + :type connectivity_status: + list[~azure.mgmt.apimanagement.models.ConnectivityStatusContract] + """ + + _validation = { + 'dns_servers': {'required': True}, + 'connectivity_status': {'required': True}, + } + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'connectivity_status': {'key': 'connectivityStatus', 'type': '[ConnectivityStatusContract]'}, + } + + def __init__(self, **kwargs): + super(NetworkStatusContract, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) + self.connectivity_status = kwargs.get('connectivity_status', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location.py new file mode 100644 index 000000000000..d7268e2806dc --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkStatusContractByLocation(Model): + """Network Status in the Location. + + :param location: Location of service + :type location: str + :param network_status: Network status in Location + :type network_status: + ~azure.mgmt.apimanagement.models.NetworkStatusContract + """ + + _validation = { + 'location': {'min_length': 1}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'network_status': {'key': 'networkStatus', 'type': 'NetworkStatusContract'}, + } + + def __init__(self, **kwargs): + super(NetworkStatusContractByLocation, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.network_status = kwargs.get('network_status', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location_py3.py new file mode 100644 index 000000000000..8179a33cc8bb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_by_location_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkStatusContractByLocation(Model): + """Network Status in the Location. + + :param location: Location of service + :type location: str + :param network_status: Network status in Location + :type network_status: + ~azure.mgmt.apimanagement.models.NetworkStatusContract + """ + + _validation = { + 'location': {'min_length': 1}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'network_status': {'key': 'networkStatus', 'type': 'NetworkStatusContract'}, + } + + def __init__(self, *, location: str=None, network_status=None, **kwargs) -> None: + super(NetworkStatusContractByLocation, self).__init__(**kwargs) + self.location = location + self.network_status = network_status diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_py3.py new file mode 100644 index 000000000000..42847b9bee85 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/network_status_contract_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkStatusContract(Model): + """Network Status details. + + All required parameters must be populated in order to send to Azure. + + :param dns_servers: Required. Gets the list of DNS servers IPV4 addresses. + :type dns_servers: list[str] + :param connectivity_status: Required. Gets the list of Connectivity Status + to the Resources on which the service depends upon. + :type connectivity_status: + list[~azure.mgmt.apimanagement.models.ConnectivityStatusContract] + """ + + _validation = { + 'dns_servers': {'required': True}, + 'connectivity_status': {'required': True}, + } + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'connectivity_status': {'key': 'connectivityStatus', 'type': '[ConnectivityStatusContract]'}, + } + + def __init__(self, *, dns_servers, connectivity_status, **kwargs) -> None: + super(NetworkStatusContract, self).__init__(**kwargs) + self.dns_servers = dns_servers + self.connectivity_status = connectivity_status diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract.py new file mode 100644 index 000000000000..0a61e503deae --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class NotificationContract(Resource): + """Notification details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param title: Required. Title of the Notification. + :type title: str + :param description: Description of the Notification. + :type description: str + :param recipients: Recipient Parameter values. + :type recipients: + ~azure.mgmt.apimanagement.models.RecipientsContractProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'required': True, 'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'recipients': {'key': 'properties.recipients', 'type': 'RecipientsContractProperties'}, + } + + def __init__(self, **kwargs): + super(NotificationContract, self).__init__(**kwargs) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) + self.recipients = kwargs.get('recipients', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_paged.py new file mode 100644 index 000000000000..be23f722f720 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class NotificationContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`NotificationContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NotificationContract]'} + } + + def __init__(self, *args, **kwargs): + + super(NotificationContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_py3.py new file mode 100644 index 000000000000..bcc72b618ddf --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/notification_contract_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class NotificationContract(Resource): + """Notification details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param title: Required. Title of the Notification. + :type title: str + :param description: Description of the Notification. + :type description: str + :param recipients: Recipient Parameter values. + :type recipients: + ~azure.mgmt.apimanagement.models.RecipientsContractProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'title': {'required': True, 'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'recipients': {'key': 'properties.recipients', 'type': 'RecipientsContractProperties'}, + } + + def __init__(self, *, title: str, description: str=None, recipients=None, **kwargs) -> None: + super(NotificationContract, self).__init__(**kwargs) + self.title = title + self.description = description + self.recipients = recipients diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract.py new file mode 100644 index 000000000000..ed8482767874 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OAuth2AuthenticationSettingsContract(Model): + """API OAuth2 Authentication settings details. + + :param authorization_server_id: OAuth authorization server identifier. + :type authorization_server_id: str + :param scope: operations scope. + :type scope: str + """ + + _attribute_map = { + 'authorization_server_id': {'key': 'authorizationServerId', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OAuth2AuthenticationSettingsContract, self).__init__(**kwargs) + self.authorization_server_id = kwargs.get('authorization_server_id', None) + self.scope = kwargs.get('scope', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract_py3.py new file mode 100644 index 000000000000..f0a1eac4ca71 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/oauth2_authentication_settings_contract_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OAuth2AuthenticationSettingsContract(Model): + """API OAuth2 Authentication settings details. + + :param authorization_server_id: OAuth authorization server identifier. + :type authorization_server_id: str + :param scope: operations scope. + :type scope: str + """ + + _attribute_map = { + 'authorization_server_id': {'key': 'authorizationServerId', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + } + + def __init__(self, *, authorization_server_id: str=None, scope: str=None, **kwargs) -> None: + super(OAuth2AuthenticationSettingsContract, self).__init__(**kwargs) + self.authorization_server_id = authorization_server_id + self.scope = scope diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract.py new file mode 100644 index 000000000000..4e5470794460 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OpenIdAuthenticationSettingsContract(Model): + """API OAuth2 Authentication settings details. + + :param openid_provider_id: OAuth authorization server identifier. + :type openid_provider_id: str + :param bearer_token_sending_methods: How to send token to the server. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethods] + """ + + _attribute_map = { + 'openid_provider_id': {'key': 'openidProviderId', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'bearerTokenSendingMethods', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(OpenIdAuthenticationSettingsContract, self).__init__(**kwargs) + self.openid_provider_id = kwargs.get('openid_provider_id', None) + self.bearer_token_sending_methods = kwargs.get('bearer_token_sending_methods', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract_py3.py new file mode 100644 index 000000000000..112a077b9833 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/open_id_authentication_settings_contract_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OpenIdAuthenticationSettingsContract(Model): + """API OAuth2 Authentication settings details. + + :param openid_provider_id: OAuth authorization server identifier. + :type openid_provider_id: str + :param bearer_token_sending_methods: How to send token to the server. + :type bearer_token_sending_methods: list[str or + ~azure.mgmt.apimanagement.models.BearerTokenSendingMethods] + """ + + _attribute_map = { + 'openid_provider_id': {'key': 'openidProviderId', 'type': 'str'}, + 'bearer_token_sending_methods': {'key': 'bearerTokenSendingMethods', 'type': '[str]'}, + } + + def __init__(self, *, openid_provider_id: str=None, bearer_token_sending_methods=None, **kwargs) -> None: + super(OpenIdAuthenticationSettingsContract, self).__init__(**kwargs) + self.openid_provider_id = openid_provider_id + self.bearer_token_sending_methods = bearer_token_sending_methods diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract.py new file mode 100644 index 000000000000..0ac98bb10f48 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class OpenidConnectProviderContract(Resource): + """OpenId Connect Provider details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param display_name: Required. User-friendly OpenID Connect Provider name. + :type display_name: str + :param description: User-friendly description of OpenID Connect Provider. + :type description: str + :param metadata_endpoint: Required. Metadata endpoint URI. + :type metadata_endpoint: str + :param client_id: Required. Client ID of developer console which is the + client application. + :type client_id: str + :param client_secret: Client Secret of developer console which is the + client application. + :type client_secret: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 50}, + 'metadata_endpoint': {'required': True}, + 'client_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'metadata_endpoint': {'key': 'properties.metadataEndpoint', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OpenidConnectProviderContract, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.metadata_endpoint = kwargs.get('metadata_endpoint', None) + self.client_id = kwargs.get('client_id', None) + self.client_secret = kwargs.get('client_secret', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_paged.py new file mode 100644 index 000000000000..ade0ae119282 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class OpenidConnectProviderContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`OpenidConnectProviderContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[OpenidConnectProviderContract]'} + } + + def __init__(self, *args, **kwargs): + + super(OpenidConnectProviderContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_py3.py new file mode 100644 index 000000000000..cbbc85bde124 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_contract_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class OpenidConnectProviderContract(Resource): + """OpenId Connect Provider details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param display_name: Required. User-friendly OpenID Connect Provider name. + :type display_name: str + :param description: User-friendly description of OpenID Connect Provider. + :type description: str + :param metadata_endpoint: Required. Metadata endpoint URI. + :type metadata_endpoint: str + :param client_id: Required. Client ID of developer console which is the + client application. + :type client_id: str + :param client_secret: Client Secret of developer console which is the + client application. + :type client_secret: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 50}, + 'metadata_endpoint': {'required': True}, + 'client_id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'metadata_endpoint': {'key': 'properties.metadataEndpoint', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, metadata_endpoint: str, client_id: str, description: str=None, client_secret: str=None, **kwargs) -> None: + super(OpenidConnectProviderContract, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.metadata_endpoint = metadata_endpoint + self.client_id = client_id + self.client_secret = client_secret diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract.py new file mode 100644 index 000000000000..ff37d87ccedd --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OpenidConnectProviderUpdateContract(Model): + """Parameters supplied to the Update OpenID Connect Provider operation. + + :param display_name: User-friendly OpenID Connect Provider name. + :type display_name: str + :param description: User-friendly description of OpenID Connect Provider. + :type description: str + :param metadata_endpoint: Metadata endpoint URI. + :type metadata_endpoint: str + :param client_id: Client ID of developer console which is the client + application. + :type client_id: str + :param client_secret: Client Secret of developer console which is the + client application. + :type client_secret: str + """ + + _validation = { + 'display_name': {'max_length': 50}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'metadata_endpoint': {'key': 'properties.metadataEndpoint', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OpenidConnectProviderUpdateContract, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.metadata_endpoint = kwargs.get('metadata_endpoint', None) + self.client_id = kwargs.get('client_id', None) + self.client_secret = kwargs.get('client_secret', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract_py3.py new file mode 100644 index 000000000000..0acdde07011a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/openid_connect_provider_update_contract_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OpenidConnectProviderUpdateContract(Model): + """Parameters supplied to the Update OpenID Connect Provider operation. + + :param display_name: User-friendly OpenID Connect Provider name. + :type display_name: str + :param description: User-friendly description of OpenID Connect Provider. + :type description: str + :param metadata_endpoint: Metadata endpoint URI. + :type metadata_endpoint: str + :param client_id: Client ID of developer console which is the client + application. + :type client_id: str + :param client_secret: Client Secret of developer console which is the + client application. + :type client_secret: str + """ + + _validation = { + 'display_name': {'max_length': 50}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'metadata_endpoint': {'key': 'properties.metadataEndpoint', 'type': 'str'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + } + + def __init__(self, *, display_name: str=None, description: str=None, metadata_endpoint: str=None, client_id: str=None, client_secret: str=None, **kwargs) -> None: + super(OpenidConnectProviderUpdateContract, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.metadata_endpoint = metadata_endpoint + self.client_id = client_id + self.client_secret = client_secret diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation.py new file mode 100644 index 000000000000..9b403bad2fcf --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """REST API operation. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: The object that describes the operation. + :type display: ~azure.mgmt.apimanagement.models.OperationDisplay + :param origin: The operation origin. + :type origin: str + :param properties: The operation properties. + :type properties: object + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract.py new file mode 100644 index 000000000000..cf9b5b4a3ff0 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class OperationContract(Resource): + """Api Operation details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param template_parameters: Collection of URL template parameters. + :type template_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param description: Description of the operation. May include HTML + formatting tags. + :type description: str + :param request: An entity containing request details. + :type request: ~azure.mgmt.apimanagement.models.RequestContract + :param responses: Array of Operation responses. + :type responses: list[~azure.mgmt.apimanagement.models.ResponseContract] + :param policies: Operation Policies + :type policies: str + :param display_name: Required. Operation Name. + :type display_name: str + :param method: Required. A Valid HTTP Operation Method. Typical Http + Methods like GET, PUT, POST but not limited by only them. + :type method: str + :param url_template: Required. Relative URL template identifying the + target resource for this operation. May include parameters. Example: + /customers/{cid}/orders/{oid}/?date={date} + :type url_template: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'max_length': 1000}, + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + 'method': {'required': True}, + 'url_template': {'required': True, 'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'template_parameters': {'key': 'properties.templateParameters', 'type': '[ParameterContract]'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'request': {'key': 'properties.request', 'type': 'RequestContract'}, + 'responses': {'key': 'properties.responses', 'type': '[ResponseContract]'}, + 'policies': {'key': 'properties.policies', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'method': {'key': 'properties.method', 'type': 'str'}, + 'url_template': {'key': 'properties.urlTemplate', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationContract, self).__init__(**kwargs) + self.template_parameters = kwargs.get('template_parameters', None) + self.description = kwargs.get('description', None) + self.request = kwargs.get('request', None) + self.responses = kwargs.get('responses', None) + self.policies = kwargs.get('policies', None) + self.display_name = kwargs.get('display_name', None) + self.method = kwargs.get('method', None) + self.url_template = kwargs.get('url_template', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_paged.py new file mode 100644 index 000000000000..d26188bf9f3b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class OperationContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`OperationContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[OperationContract]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_py3.py new file mode 100644 index 000000000000..197b2f410f8d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_contract_py3.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class OperationContract(Resource): + """Api Operation details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param template_parameters: Collection of URL template parameters. + :type template_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param description: Description of the operation. May include HTML + formatting tags. + :type description: str + :param request: An entity containing request details. + :type request: ~azure.mgmt.apimanagement.models.RequestContract + :param responses: Array of Operation responses. + :type responses: list[~azure.mgmt.apimanagement.models.ResponseContract] + :param policies: Operation Policies + :type policies: str + :param display_name: Required. Operation Name. + :type display_name: str + :param method: Required. A Valid HTTP Operation Method. Typical Http + Methods like GET, PUT, POST but not limited by only them. + :type method: str + :param url_template: Required. Relative URL template identifying the + target resource for this operation. May include parameters. Example: + /customers/{cid}/orders/{oid}/?date={date} + :type url_template: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'max_length': 1000}, + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + 'method': {'required': True}, + 'url_template': {'required': True, 'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'template_parameters': {'key': 'properties.templateParameters', 'type': '[ParameterContract]'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'request': {'key': 'properties.request', 'type': 'RequestContract'}, + 'responses': {'key': 'properties.responses', 'type': '[ResponseContract]'}, + 'policies': {'key': 'properties.policies', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'method': {'key': 'properties.method', 'type': 'str'}, + 'url_template': {'key': 'properties.urlTemplate', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, method: str, url_template: str, template_parameters=None, description: str=None, request=None, responses=None, policies: str=None, **kwargs) -> None: + super(OperationContract, self).__init__(**kwargs) + self.template_parameters = template_parameters + self.description = description + self.request = request + self.responses = responses + self.policies = policies + self.display_name = display_name + self.method = method + self.url_template = url_template diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display.py new file mode 100644 index 000000000000..d0fde0c4a0b9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """The object that describes the operation. + + :param provider: Friendly name of the resource provider + :type provider: str + :param operation: Operation type: read, write, delete, listKeys/action, + etc. + :type operation: str + :param resource: Resource type on which the operation is performed. + :type resource: str + :param description: Friendly name of the operation + :type description: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.operation = kwargs.get('operation', None) + self.resource = kwargs.get('resource', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display_py3.py new file mode 100644 index 000000000000..37858ea03adb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_display_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """The object that describes the operation. + + :param provider: Friendly name of the resource provider + :type provider: str + :param operation: Operation type: read, write, delete, listKeys/action, + etc. + :type operation: str + :param resource: Resource type on which the operation is performed. + :type resource: str + :param description: Friendly name of the operation + :type description: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, provider: str=None, operation: str=None, resource: str=None, description: str=None, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.operation = operation + self.resource = resource + self.description = description diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract.py new file mode 100644 index 000000000000..bc0a8f41ace2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationEntityBaseContract(Model): + """Api Operation Entity Base Contract details. + + :param template_parameters: Collection of URL template parameters. + :type template_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param description: Description of the operation. May include HTML + formatting tags. + :type description: str + :param request: An entity containing request details. + :type request: ~azure.mgmt.apimanagement.models.RequestContract + :param responses: Array of Operation responses. + :type responses: list[~azure.mgmt.apimanagement.models.ResponseContract] + :param policies: Operation Policies + :type policies: str + """ + + _validation = { + 'description': {'max_length': 1000}, + } + + _attribute_map = { + 'template_parameters': {'key': 'templateParameters', 'type': '[ParameterContract]'}, + 'description': {'key': 'description', 'type': 'str'}, + 'request': {'key': 'request', 'type': 'RequestContract'}, + 'responses': {'key': 'responses', 'type': '[ResponseContract]'}, + 'policies': {'key': 'policies', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationEntityBaseContract, self).__init__(**kwargs) + self.template_parameters = kwargs.get('template_parameters', None) + self.description = kwargs.get('description', None) + self.request = kwargs.get('request', None) + self.responses = kwargs.get('responses', None) + self.policies = kwargs.get('policies', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract_py3.py new file mode 100644 index 000000000000..62d409a210db --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_entity_base_contract_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationEntityBaseContract(Model): + """Api Operation Entity Base Contract details. + + :param template_parameters: Collection of URL template parameters. + :type template_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param description: Description of the operation. May include HTML + formatting tags. + :type description: str + :param request: An entity containing request details. + :type request: ~azure.mgmt.apimanagement.models.RequestContract + :param responses: Array of Operation responses. + :type responses: list[~azure.mgmt.apimanagement.models.ResponseContract] + :param policies: Operation Policies + :type policies: str + """ + + _validation = { + 'description': {'max_length': 1000}, + } + + _attribute_map = { + 'template_parameters': {'key': 'templateParameters', 'type': '[ParameterContract]'}, + 'description': {'key': 'description', 'type': 'str'}, + 'request': {'key': 'request', 'type': 'RequestContract'}, + 'responses': {'key': 'responses', 'type': '[ResponseContract]'}, + 'policies': {'key': 'policies', 'type': 'str'}, + } + + def __init__(self, *, template_parameters=None, description: str=None, request=None, responses=None, policies: str=None, **kwargs) -> None: + super(OperationEntityBaseContract, self).__init__(**kwargs) + self.template_parameters = template_parameters + self.description = description + self.request = request + self.responses = responses + self.policies = policies diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_paged.py new file mode 100644 index 000000000000..950b8acd7466 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_py3.py new file mode 100644 index 000000000000..eb38d162365a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """REST API operation. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: The object that describes the operation. + :type display: ~azure.mgmt.apimanagement.models.OperationDisplay + :param origin: The operation origin. + :type origin: str + :param properties: The operation properties. + :type properties: object + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, properties=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.properties = properties diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract.py new file mode 100644 index 000000000000..736344faab29 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationResultContract(Model): + """Operation Result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Operation result identifier. + :type id: str + :param status: Status of an async operation. Possible values include: + 'Started', 'InProgress', 'Succeeded', 'Failed' + :type status: str or ~azure.mgmt.apimanagement.models.AsyncOperationStatus + :param started: Start time of an async operation. The date conforms to the + following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :type started: datetime + :param updated: Last update time of an async operation. The date conforms + to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO + 8601 standard. + :type updated: datetime + :param result_info: Optional result info. + :type result_info: str + :param error: Error Body Contract + :type error: ~azure.mgmt.apimanagement.models.ErrorResponseBody + :ivar action_log: This property if only provided as part of the + TenantConfiguration_Validate operation. It contains the log the entities + which will be updated/created/deleted as part of the + TenantConfiguration_Deploy operation. + :vartype action_log: + list[~azure.mgmt.apimanagement.models.OperationResultLogItemContract] + """ + + _validation = { + 'action_log': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'AsyncOperationStatus'}, + 'started': {'key': 'started', 'type': 'iso-8601'}, + 'updated': {'key': 'updated', 'type': 'iso-8601'}, + 'result_info': {'key': 'resultInfo', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ErrorResponseBody'}, + 'action_log': {'key': 'actionLog', 'type': '[OperationResultLogItemContract]'}, + } + + def __init__(self, **kwargs): + super(OperationResultContract, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.status = kwargs.get('status', None) + self.started = kwargs.get('started', None) + self.updated = kwargs.get('updated', None) + self.result_info = kwargs.get('result_info', None) + self.error = kwargs.get('error', None) + self.action_log = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract_py3.py new file mode 100644 index 000000000000..0694c535ae2b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_contract_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationResultContract(Model): + """Operation Result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Operation result identifier. + :type id: str + :param status: Status of an async operation. Possible values include: + 'Started', 'InProgress', 'Succeeded', 'Failed' + :type status: str or ~azure.mgmt.apimanagement.models.AsyncOperationStatus + :param started: Start time of an async operation. The date conforms to the + following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :type started: datetime + :param updated: Last update time of an async operation. The date conforms + to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO + 8601 standard. + :type updated: datetime + :param result_info: Optional result info. + :type result_info: str + :param error: Error Body Contract + :type error: ~azure.mgmt.apimanagement.models.ErrorResponseBody + :ivar action_log: This property if only provided as part of the + TenantConfiguration_Validate operation. It contains the log the entities + which will be updated/created/deleted as part of the + TenantConfiguration_Deploy operation. + :vartype action_log: + list[~azure.mgmt.apimanagement.models.OperationResultLogItemContract] + """ + + _validation = { + 'action_log': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'AsyncOperationStatus'}, + 'started': {'key': 'started', 'type': 'iso-8601'}, + 'updated': {'key': 'updated', 'type': 'iso-8601'}, + 'result_info': {'key': 'resultInfo', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ErrorResponseBody'}, + 'action_log': {'key': 'actionLog', 'type': '[OperationResultLogItemContract]'}, + } + + def __init__(self, *, id: str=None, status=None, started=None, updated=None, result_info: str=None, error=None, **kwargs) -> None: + super(OperationResultContract, self).__init__(**kwargs) + self.id = id + self.status = status + self.started = started + self.updated = updated + self.result_info = result_info + self.error = error + self.action_log = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract.py new file mode 100644 index 000000000000..7c6f2c63c7c0 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationResultLogItemContract(Model): + """Log of the entity being created, updated or deleted. + + :param object_type: The type of entity contract. + :type object_type: str + :param action: Action like create/update/delete. + :type action: str + :param object_key: Identifier of the entity being created/updated/deleted. + :type object_key: str + """ + + _attribute_map = { + 'object_type': {'key': 'objectType', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + 'object_key': {'key': 'objectKey', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationResultLogItemContract, self).__init__(**kwargs) + self.object_type = kwargs.get('object_type', None) + self.action = kwargs.get('action', None) + self.object_key = kwargs.get('object_key', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract_py3.py new file mode 100644 index 000000000000..e89f3615cae4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_result_log_item_contract_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationResultLogItemContract(Model): + """Log of the entity being created, updated or deleted. + + :param object_type: The type of entity contract. + :type object_type: str + :param action: Action like create/update/delete. + :type action: str + :param object_key: Identifier of the entity being created/updated/deleted. + :type object_key: str + """ + + _attribute_map = { + 'object_type': {'key': 'objectType', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + 'object_key': {'key': 'objectKey', 'type': 'str'}, + } + + def __init__(self, *, object_type: str=None, action: str=None, object_key: str=None, **kwargs) -> None: + super(OperationResultLogItemContract, self).__init__(**kwargs) + self.object_type = object_type + self.action = action + self.object_key = object_key diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties.py new file mode 100644 index 000000000000..c8d6e0a6d9f1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationTagResourceContractProperties(Model): + """Operation Entity contract Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Identifier of the operation in form /operations/{operationId}. + :type id: str + :ivar name: Operation name. + :vartype name: str + :ivar api_name: Api Name. + :vartype api_name: str + :ivar api_revision: Api Revision. + :vartype api_revision: str + :ivar api_version: Api Version. + :vartype api_version: str + :ivar description: Operation Description. + :vartype description: str + :ivar method: A Valid HTTP Operation Method. Typical Http Methods like + GET, PUT, POST but not limited by only them. + :vartype method: str + :ivar url_template: Relative URL template identifying the target resource + for this operation. May include parameters. Example: + /customers/{cid}/orders/{oid}/?date={date} + :vartype url_template: str + """ + + _validation = { + 'name': {'readonly': True}, + 'api_name': {'readonly': True}, + 'api_revision': {'readonly': True}, + 'api_version': {'readonly': True}, + 'description': {'readonly': True}, + 'method': {'readonly': True}, + 'url_template': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'api_name': {'key': 'apiName', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'method': {'key': 'method', 'type': 'str'}, + 'url_template': {'key': 'urlTemplate', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationTagResourceContractProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = None + self.api_name = None + self.api_revision = None + self.api_version = None + self.description = None + self.method = None + self.url_template = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties_py3.py new file mode 100644 index 000000000000..8ec9c0cb0f3b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_tag_resource_contract_properties_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationTagResourceContractProperties(Model): + """Operation Entity contract Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Identifier of the operation in form /operations/{operationId}. + :type id: str + :ivar name: Operation name. + :vartype name: str + :ivar api_name: Api Name. + :vartype api_name: str + :ivar api_revision: Api Revision. + :vartype api_revision: str + :ivar api_version: Api Version. + :vartype api_version: str + :ivar description: Operation Description. + :vartype description: str + :ivar method: A Valid HTTP Operation Method. Typical Http Methods like + GET, PUT, POST but not limited by only them. + :vartype method: str + :ivar url_template: Relative URL template identifying the target resource + for this operation. May include parameters. Example: + /customers/{cid}/orders/{oid}/?date={date} + :vartype url_template: str + """ + + _validation = { + 'name': {'readonly': True}, + 'api_name': {'readonly': True}, + 'api_revision': {'readonly': True}, + 'api_version': {'readonly': True}, + 'description': {'readonly': True}, + 'method': {'readonly': True}, + 'url_template': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'api_name': {'key': 'apiName', 'type': 'str'}, + 'api_revision': {'key': 'apiRevision', 'type': 'str'}, + 'api_version': {'key': 'apiVersion', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'method': {'key': 'method', 'type': 'str'}, + 'url_template': {'key': 'urlTemplate', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(OperationTagResourceContractProperties, self).__init__(**kwargs) + self.id = id + self.name = None + self.api_name = None + self.api_revision = None + self.api_version = None + self.description = None + self.method = None + self.url_template = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract.py new file mode 100644 index 000000000000..b4b17f1dab95 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationUpdateContract(Model): + """Api Operation Update Contract details. + + :param template_parameters: Collection of URL template parameters. + :type template_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param description: Description of the operation. May include HTML + formatting tags. + :type description: str + :param request: An entity containing request details. + :type request: ~azure.mgmt.apimanagement.models.RequestContract + :param responses: Array of Operation responses. + :type responses: list[~azure.mgmt.apimanagement.models.ResponseContract] + :param policies: Operation Policies + :type policies: str + :param display_name: Operation Name. + :type display_name: str + :param method: A Valid HTTP Operation Method. Typical Http Methods like + GET, PUT, POST but not limited by only them. + :type method: str + :param url_template: Relative URL template identifying the target resource + for this operation. May include parameters. Example: + /customers/{cid}/orders/{oid}/?date={date} + :type url_template: str + """ + + _validation = { + 'description': {'max_length': 1000}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'url_template': {'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'template_parameters': {'key': 'properties.templateParameters', 'type': '[ParameterContract]'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'request': {'key': 'properties.request', 'type': 'RequestContract'}, + 'responses': {'key': 'properties.responses', 'type': '[ResponseContract]'}, + 'policies': {'key': 'properties.policies', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'method': {'key': 'properties.method', 'type': 'str'}, + 'url_template': {'key': 'properties.urlTemplate', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationUpdateContract, self).__init__(**kwargs) + self.template_parameters = kwargs.get('template_parameters', None) + self.description = kwargs.get('description', None) + self.request = kwargs.get('request', None) + self.responses = kwargs.get('responses', None) + self.policies = kwargs.get('policies', None) + self.display_name = kwargs.get('display_name', None) + self.method = kwargs.get('method', None) + self.url_template = kwargs.get('url_template', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract_py3.py new file mode 100644 index 000000000000..ad070cb9c980 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/operation_update_contract_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationUpdateContract(Model): + """Api Operation Update Contract details. + + :param template_parameters: Collection of URL template parameters. + :type template_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param description: Description of the operation. May include HTML + formatting tags. + :type description: str + :param request: An entity containing request details. + :type request: ~azure.mgmt.apimanagement.models.RequestContract + :param responses: Array of Operation responses. + :type responses: list[~azure.mgmt.apimanagement.models.ResponseContract] + :param policies: Operation Policies + :type policies: str + :param display_name: Operation Name. + :type display_name: str + :param method: A Valid HTTP Operation Method. Typical Http Methods like + GET, PUT, POST but not limited by only them. + :type method: str + :param url_template: Relative URL template identifying the target resource + for this operation. May include parameters. Example: + /customers/{cid}/orders/{oid}/?date={date} + :type url_template: str + """ + + _validation = { + 'description': {'max_length': 1000}, + 'display_name': {'max_length': 300, 'min_length': 1}, + 'url_template': {'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'template_parameters': {'key': 'properties.templateParameters', 'type': '[ParameterContract]'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'request': {'key': 'properties.request', 'type': 'RequestContract'}, + 'responses': {'key': 'properties.responses', 'type': '[ResponseContract]'}, + 'policies': {'key': 'properties.policies', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'method': {'key': 'properties.method', 'type': 'str'}, + 'url_template': {'key': 'properties.urlTemplate', 'type': 'str'}, + } + + def __init__(self, *, template_parameters=None, description: str=None, request=None, responses=None, policies: str=None, display_name: str=None, method: str=None, url_template: str=None, **kwargs) -> None: + super(OperationUpdateContract, self).__init__(**kwargs) + self.template_parameters = template_parameters + self.description = description + self.request = request + self.responses = responses + self.policies = policies + self.display_name = display_name + self.method = method + self.url_template = url_template diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract.py new file mode 100644 index 000000000000..147a96efdf68 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ParameterContract(Model): + """Operation parameters details. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Parameter name. + :type name: str + :param description: Parameter description. + :type description: str + :param type: Required. Parameter type. + :type type: str + :param default_value: Default parameter value. + :type default_value: str + :param required: Specifies whether parameter is required or not. + :type required: bool + :param values: Parameter values. + :type values: list[str] + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'default_value': {'key': 'defaultValue', 'type': 'str'}, + 'required': {'key': 'required', 'type': 'bool'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ParameterContract, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.type = kwargs.get('type', None) + self.default_value = kwargs.get('default_value', None) + self.required = kwargs.get('required', None) + self.values = kwargs.get('values', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract_py3.py new file mode 100644 index 000000000000..5f6ea4a0e91b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/parameter_contract_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ParameterContract(Model): + """Operation parameters details. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Parameter name. + :type name: str + :param description: Parameter description. + :type description: str + :param type: Required. Parameter type. + :type type: str + :param default_value: Default parameter value. + :type default_value: str + :param required: Specifies whether parameter is required or not. + :type required: bool + :param values: Parameter values. + :type values: list[str] + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'default_value': {'key': 'defaultValue', 'type': 'str'}, + 'required': {'key': 'required', 'type': 'bool'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, *, name: str, type: str, description: str=None, default_value: str=None, required: bool=None, values=None, **kwargs) -> None: + super(ParameterContract, self).__init__(**kwargs) + self.name = name + self.description = description + self.type = type + self.default_value = default_value + self.required = required + self.values = values diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings.py new file mode 100644 index 000000000000..0089215e3802 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PipelineDiagnosticSettings(Model): + """Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. + + :param request: Diagnostic settings for request. + :type request: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic + :param response: Diagnostic settings for response. + :type response: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic + """ + + _attribute_map = { + 'request': {'key': 'request', 'type': 'HttpMessageDiagnostic'}, + 'response': {'key': 'response', 'type': 'HttpMessageDiagnostic'}, + } + + def __init__(self, **kwargs): + super(PipelineDiagnosticSettings, self).__init__(**kwargs) + self.request = kwargs.get('request', None) + self.response = kwargs.get('response', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings_py3.py new file mode 100644 index 000000000000..ba30e8468d35 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/pipeline_diagnostic_settings_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PipelineDiagnosticSettings(Model): + """Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. + + :param request: Diagnostic settings for request. + :type request: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic + :param response: Diagnostic settings for response. + :type response: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic + """ + + _attribute_map = { + 'request': {'key': 'request', 'type': 'HttpMessageDiagnostic'}, + 'response': {'key': 'response', 'type': 'HttpMessageDiagnostic'}, + } + + def __init__(self, *, request=None, response=None, **kwargs) -> None: + super(PipelineDiagnosticSettings, self).__init__(**kwargs) + self.request = request + self.response = response diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection.py new file mode 100644 index 000000000000..4e983e14003b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PolicyCollection(Model): + """The response of the list policy operation. + + :param value: Policy Contract value. + :type value: list[~azure.mgmt.apimanagement.models.PolicyContract] + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[PolicyContract]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PolicyCollection, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection_py3.py new file mode 100644 index 000000000000..c48d44838266 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_collection_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PolicyCollection(Model): + """The response of the list policy operation. + + :param value: Policy Contract value. + :type value: list[~azure.mgmt.apimanagement.models.PolicyContract] + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[PolicyContract]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(PolicyCollection, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract.py new file mode 100644 index 000000000000..313c69931b1c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class PolicyContract(Resource): + """Policy Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param value: Required. Contents of the Policy as defined by the format. + :type value: str + :param format: Format of the policyContent. Possible values include: + 'xml', 'xml-link', 'rawxml', 'rawxml-link'. Default value: "xml" . + :type format: str or ~azure.mgmt.apimanagement.models.PolicyContentFormat + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'format': {'key': 'properties.format', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PolicyContract, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.format = kwargs.get('format', "xml") diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract_py3.py new file mode 100644 index 000000000000..34ff1900dac8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_contract_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class PolicyContract(Resource): + """Policy Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param value: Required. Contents of the Policy as defined by the format. + :type value: str + :param format: Format of the policyContent. Possible values include: + 'xml', 'xml-link', 'rawxml', 'rawxml-link'. Default value: "xml" . + :type format: str or ~azure.mgmt.apimanagement.models.PolicyContentFormat + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'format': {'key': 'properties.format', 'type': 'str'}, + } + + def __init__(self, *, value: str, format="xml", **kwargs) -> None: + super(PolicyContract, self).__init__(**kwargs) + self.value = value + self.format = format diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract.py new file mode 100644 index 000000000000..e9317d9566c6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PolicySnippetContract(Model): + """Policy snippet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Snippet name. + :vartype name: str + :ivar content: Snippet content. + :vartype content: str + :ivar tool_tip: Snippet toolTip. + :vartype tool_tip: str + :ivar scope: Binary OR value of the Snippet scope. + :vartype scope: int + """ + + _validation = { + 'name': {'readonly': True}, + 'content': {'readonly': True}, + 'tool_tip': {'readonly': True}, + 'scope': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'content': {'key': 'content', 'type': 'str'}, + 'tool_tip': {'key': 'toolTip', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(PolicySnippetContract, self).__init__(**kwargs) + self.name = None + self.content = None + self.tool_tip = None + self.scope = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract_py3.py new file mode 100644 index 000000000000..8bc7494b939f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippet_contract_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PolicySnippetContract(Model): + """Policy snippet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Snippet name. + :vartype name: str + :ivar content: Snippet content. + :vartype content: str + :ivar tool_tip: Snippet toolTip. + :vartype tool_tip: str + :ivar scope: Binary OR value of the Snippet scope. + :vartype scope: int + """ + + _validation = { + 'name': {'readonly': True}, + 'content': {'readonly': True}, + 'tool_tip': {'readonly': True}, + 'scope': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'content': {'key': 'content', 'type': 'str'}, + 'tool_tip': {'key': 'toolTip', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(PolicySnippetContract, self).__init__(**kwargs) + self.name = None + self.content = None + self.tool_tip = None + self.scope = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection.py new file mode 100644 index 000000000000..84129684df80 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PolicySnippetsCollection(Model): + """The response of the list policy snippets operation. + + :param value: Policy snippet value. + :type value: list[~azure.mgmt.apimanagement.models.PolicySnippetContract] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[PolicySnippetContract]'}, + } + + def __init__(self, **kwargs): + super(PolicySnippetsCollection, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection_py3.py new file mode 100644 index 000000000000..0744acea8038 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/policy_snippets_collection_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PolicySnippetsCollection(Model): + """The response of the list policy snippets operation. + + :param value: Policy snippet value. + :type value: list[~azure.mgmt.apimanagement.models.PolicySnippetContract] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[PolicySnippetContract]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(PolicySnippetsCollection, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings.py new file mode 100644 index 000000000000..12afb1d73450 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class PortalDelegationSettings(Resource): + """Delegation settings for a developer portal. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param url: A delegation Url. + :type url: str + :param validation_key: A base64-encoded validation key to validate, that a + request is coming from Azure API Management. + :type validation_key: str + :param subscriptions: Subscriptions delegation settings. + :type subscriptions: + ~azure.mgmt.apimanagement.models.SubscriptionsDelegationSettingsProperties + :param user_registration: User registration delegation settings. + :type user_registration: + ~azure.mgmt.apimanagement.models.RegistrationDelegationSettingsProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'validation_key': {'key': 'properties.validationKey', 'type': 'str'}, + 'subscriptions': {'key': 'properties.subscriptions', 'type': 'SubscriptionsDelegationSettingsProperties'}, + 'user_registration': {'key': 'properties.userRegistration', 'type': 'RegistrationDelegationSettingsProperties'}, + } + + def __init__(self, **kwargs): + super(PortalDelegationSettings, self).__init__(**kwargs) + self.url = kwargs.get('url', None) + self.validation_key = kwargs.get('validation_key', None) + self.subscriptions = kwargs.get('subscriptions', None) + self.user_registration = kwargs.get('user_registration', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings_py3.py new file mode 100644 index 000000000000..3aa96ae6ff5a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_delegation_settings_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class PortalDelegationSettings(Resource): + """Delegation settings for a developer portal. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param url: A delegation Url. + :type url: str + :param validation_key: A base64-encoded validation key to validate, that a + request is coming from Azure API Management. + :type validation_key: str + :param subscriptions: Subscriptions delegation settings. + :type subscriptions: + ~azure.mgmt.apimanagement.models.SubscriptionsDelegationSettingsProperties + :param user_registration: User registration delegation settings. + :type user_registration: + ~azure.mgmt.apimanagement.models.RegistrationDelegationSettingsProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'validation_key': {'key': 'properties.validationKey', 'type': 'str'}, + 'subscriptions': {'key': 'properties.subscriptions', 'type': 'SubscriptionsDelegationSettingsProperties'}, + 'user_registration': {'key': 'properties.userRegistration', 'type': 'RegistrationDelegationSettingsProperties'}, + } + + def __init__(self, *, url: str=None, validation_key: str=None, subscriptions=None, user_registration=None, **kwargs) -> None: + super(PortalDelegationSettings, self).__init__(**kwargs) + self.url = url + self.validation_key = validation_key + self.subscriptions = subscriptions + self.user_registration = user_registration diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings.py new file mode 100644 index 000000000000..b8f376395a0e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class PortalSigninSettings(Resource): + """Sign-In settings for the Developer Portal. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param enabled: Redirect Anonymous users to the Sign-In page. + :type enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PortalSigninSettings, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings_py3.py new file mode 100644 index 000000000000..5f7a08a5a7f9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signin_settings_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class PortalSigninSettings(Resource): + """Sign-In settings for the Developer Portal. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param enabled: Redirect Anonymous users to the Sign-In page. + :type enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(PortalSigninSettings, self).__init__(**kwargs) + self.enabled = enabled diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings.py new file mode 100644 index 000000000000..ed58574923bd --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class PortalSignupSettings(Resource): + """Sign-Up settings for a developer portal. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param enabled: Allow users to sign up on a developer portal. + :type enabled: bool + :param terms_of_service: Terms of service contract properties. + :type terms_of_service: + ~azure.mgmt.apimanagement.models.TermsOfServiceProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'terms_of_service': {'key': 'properties.termsOfService', 'type': 'TermsOfServiceProperties'}, + } + + def __init__(self, **kwargs): + super(PortalSignupSettings, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.terms_of_service = kwargs.get('terms_of_service', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings_py3.py new file mode 100644 index 000000000000..46eb461e53ff --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/portal_signup_settings_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class PortalSignupSettings(Resource): + """Sign-Up settings for a developer portal. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param enabled: Allow users to sign up on a developer portal. + :type enabled: bool + :param terms_of_service: Terms of service contract properties. + :type terms_of_service: + ~azure.mgmt.apimanagement.models.TermsOfServiceProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'terms_of_service': {'key': 'properties.termsOfService', 'type': 'TermsOfServiceProperties'}, + } + + def __init__(self, *, enabled: bool=None, terms_of_service=None, **kwargs) -> None: + super(PortalSignupSettings, self).__init__(**kwargs) + self.enabled = enabled + self.terms_of_service = terms_of_service diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract.py new file mode 100644 index 000000000000..c25ec9bde595 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract.py @@ -0,0 +1,93 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ProductContract(Resource): + """Product details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + :param display_name: Required. Product name. + :type display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'max_length': 1000, 'min_length': 1}, + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'terms': {'key': 'properties.terms', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'properties.approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'properties.subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'ProductState'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProductContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.terms = kwargs.get('terms', None) + self.subscription_required = kwargs.get('subscription_required', None) + self.approval_required = kwargs.get('approval_required', None) + self.subscriptions_limit = kwargs.get('subscriptions_limit', None) + self.state = kwargs.get('state', None) + self.display_name = kwargs.get('display_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_paged.py new file mode 100644 index 000000000000..ed575a6564cb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ProductContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`ProductContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ProductContract]'} + } + + def __init__(self, *args, **kwargs): + + super(ProductContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_py3.py new file mode 100644 index 000000000000..2183cdb4de8a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_contract_py3.py @@ -0,0 +1,93 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ProductContract(Resource): + """Product details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + :param display_name: Required. Product name. + :type display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'max_length': 1000, 'min_length': 1}, + 'display_name': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'terms': {'key': 'properties.terms', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'properties.approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'properties.subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'ProductState'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, description: str=None, terms: str=None, subscription_required: bool=None, approval_required: bool=None, subscriptions_limit: int=None, state=None, **kwargs) -> None: + super(ProductContract, self).__init__(**kwargs) + self.description = description + self.terms = terms + self.subscription_required = subscription_required + self.approval_required = approval_required + self.subscriptions_limit = subscriptions_limit + self.state = state + self.display_name = display_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters.py new file mode 100644 index 000000000000..4e1f97bc6694 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProductEntityBaseParameters(Model): + """Product Entity Base Parameters. + + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + """ + + _validation = { + 'description': {'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'terms': {'key': 'terms', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'ProductState'}, + } + + def __init__(self, **kwargs): + super(ProductEntityBaseParameters, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.terms = kwargs.get('terms', None) + self.subscription_required = kwargs.get('subscription_required', None) + self.approval_required = kwargs.get('approval_required', None) + self.subscriptions_limit = kwargs.get('subscriptions_limit', None) + self.state = kwargs.get('state', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters_py3.py new file mode 100644 index 000000000000..5574461683ea --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_entity_base_parameters_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProductEntityBaseParameters(Model): + """Product Entity Base Parameters. + + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + """ + + _validation = { + 'description': {'max_length': 1000, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'terms': {'key': 'terms', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'ProductState'}, + } + + def __init__(self, *, description: str=None, terms: str=None, subscription_required: bool=None, approval_required: bool=None, subscriptions_limit: int=None, state=None, **kwargs) -> None: + super(ProductEntityBaseParameters, self).__init__(**kwargs) + self.description = description + self.terms = terms + self.subscription_required = subscription_required + self.approval_required = approval_required + self.subscriptions_limit = subscriptions_limit + self.state = state diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties.py new file mode 100644 index 000000000000..0b32a2c9df40 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .product_entity_base_parameters import ProductEntityBaseParameters + + +class ProductTagResourceContractProperties(ProductEntityBaseParameters): + """Product profile. + + All required parameters must be populated in order to send to Azure. + + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + :param id: Identifier of the product in the form of /products/{productId} + :type id: str + :param name: Required. Product name. + :type name: str + """ + + _validation = { + 'description': {'max_length': 1000, 'min_length': 1}, + 'name': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'terms': {'key': 'terms', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'ProductState'}, + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProductTagResourceContractProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties_py3.py new file mode 100644 index 000000000000..ecb7fef20809 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_tag_resource_contract_properties_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .product_entity_base_parameters_py3 import ProductEntityBaseParameters + + +class ProductTagResourceContractProperties(ProductEntityBaseParameters): + """Product profile. + + All required parameters must be populated in order to send to Azure. + + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + :param id: Identifier of the product in the form of /products/{productId} + :type id: str + :param name: Required. Product name. + :type name: str + """ + + _validation = { + 'description': {'max_length': 1000, 'min_length': 1}, + 'name': {'required': True, 'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'terms': {'key': 'terms', 'type': 'str'}, + 'subscription_required': {'key': 'subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'ProductState'}, + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str, description: str=None, terms: str=None, subscription_required: bool=None, approval_required: bool=None, subscriptions_limit: int=None, state=None, id: str=None, **kwargs) -> None: + super(ProductTagResourceContractProperties, self).__init__(description=description, terms=terms, subscription_required=subscription_required, approval_required=approval_required, subscriptions_limit=subscriptions_limit, state=state, **kwargs) + self.id = id + self.name = name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters.py new file mode 100644 index 000000000000..ce8e0d73d728 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProductUpdateParameters(Model): + """Product Update parameters. + + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + :param display_name: Product name. + :type display_name: str + """ + + _validation = { + 'description': {'max_length': 1000, 'min_length': 1}, + 'display_name': {'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'terms': {'key': 'properties.terms', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'properties.approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'properties.subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'ProductState'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProductUpdateParameters, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.terms = kwargs.get('terms', None) + self.subscription_required = kwargs.get('subscription_required', None) + self.approval_required = kwargs.get('approval_required', None) + self.subscriptions_limit = kwargs.get('subscriptions_limit', None) + self.state = kwargs.get('state', None) + self.display_name = kwargs.get('display_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters_py3.py new file mode 100644 index 000000000000..9154962e697d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/product_update_parameters_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProductUpdateParameters(Model): + """Product Update parameters. + + :param description: Product description. May include HTML formatting tags. + :type description: str + :param terms: Product terms of use. Developers trying to subscribe to the + product will be presented and required to accept these terms before they + can complete the subscription process. + :type terms: str + :param subscription_required: Whether a product subscription is required + for accessing APIs included in this product. If true, the product is + referred to as "protected" and a valid subscription key is required for a + request to an API included in the product to succeed. If false, the + product is referred to as "open" and requests to an API included in the + product can be made without a subscription key. If property is omitted + when creating a new product it's value is assumed to be true. + :type subscription_required: bool + :param approval_required: whether subscription approval is required. If + false, new subscriptions will be approved automatically enabling + developers to call the product’s APIs immediately after subscribing. If + true, administrators must manually approve the subscription before the + developer can any of the product’s APIs. Can be present only if + subscriptionRequired property is present and has a value of false. + :type approval_required: bool + :param subscriptions_limit: Whether the number of subscriptions a user can + have to this product at the same time. Set to null or omit to allow + unlimited per user subscriptions. Can be present only if + subscriptionRequired property is present and has a value of false. + :type subscriptions_limit: int + :param state: whether product is published or not. Published products are + discoverable by users of developer portal. Non published products are + visible only to administrators. Default state of Product is notPublished. + Possible values include: 'notPublished', 'published' + :type state: str or ~azure.mgmt.apimanagement.models.ProductState + :param display_name: Product name. + :type display_name: str + """ + + _validation = { + 'description': {'max_length': 1000, 'min_length': 1}, + 'display_name': {'max_length': 300, 'min_length': 1}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'terms': {'key': 'properties.terms', 'type': 'str'}, + 'subscription_required': {'key': 'properties.subscriptionRequired', 'type': 'bool'}, + 'approval_required': {'key': 'properties.approvalRequired', 'type': 'bool'}, + 'subscriptions_limit': {'key': 'properties.subscriptionsLimit', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'ProductState'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, terms: str=None, subscription_required: bool=None, approval_required: bool=None, subscriptions_limit: int=None, state=None, display_name: str=None, **kwargs) -> None: + super(ProductUpdateParameters, self).__init__(**kwargs) + self.description = description + self.terms = terms + self.subscription_required = subscription_required + self.approval_required = approval_required + self.subscriptions_limit = subscriptions_limit + self.state = state + self.display_name = display_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract.py new file mode 100644 index 000000000000..aed61008da89 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class PropertyContract(Resource): + """Property details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param tags: Optional tags that when provided can be used to filter the + property list. + :type tags: list[str] + :param secret: Determines whether the value is a secret and should be + encrypted or not. Default value is false. + :type secret: bool + :param display_name: Required. Unique name of Property. It may contain + only letters, digits, period, dash, and underscore characters. + :type display_name: str + :param value: Required. Value of the property. Can contain policy + expressions. It may not be empty or consist only of whitespace. + :type value: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'tags': {'max_items': 32}, + 'display_name': {'required': True, 'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + 'value': {'required': True, 'max_length': 4096, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'properties.tags', 'type': '[str]'}, + 'secret': {'key': 'properties.secret', 'type': 'bool'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PropertyContract, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.secret = kwargs.get('secret', None) + self.display_name = kwargs.get('display_name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_paged.py new file mode 100644 index 000000000000..da50c40cf02a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class PropertyContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`PropertyContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PropertyContract]'} + } + + def __init__(self, *args, **kwargs): + + super(PropertyContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_py3.py new file mode 100644 index 000000000000..36a779b263c2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_contract_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class PropertyContract(Resource): + """Property details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param tags: Optional tags that when provided can be used to filter the + property list. + :type tags: list[str] + :param secret: Determines whether the value is a secret and should be + encrypted or not. Default value is false. + :type secret: bool + :param display_name: Required. Unique name of Property. It may contain + only letters, digits, period, dash, and underscore characters. + :type display_name: str + :param value: Required. Value of the property. Can contain policy + expressions. It may not be empty or consist only of whitespace. + :type value: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'tags': {'max_items': 32}, + 'display_name': {'required': True, 'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + 'value': {'required': True, 'max_length': 4096, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'properties.tags', 'type': '[str]'}, + 'secret': {'key': 'properties.secret', 'type': 'bool'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, value: str, tags=None, secret: bool=None, **kwargs) -> None: + super(PropertyContract, self).__init__(**kwargs) + self.tags = tags + self.secret = secret + self.display_name = display_name + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters.py new file mode 100644 index 000000000000..7666d3463f19 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PropertyEntityBaseParameters(Model): + """Property Entity Base Parameters set. + + :param tags: Optional tags that when provided can be used to filter the + property list. + :type tags: list[str] + :param secret: Determines whether the value is a secret and should be + encrypted or not. Default value is false. + :type secret: bool + """ + + _validation = { + 'tags': {'max_items': 32}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '[str]'}, + 'secret': {'key': 'secret', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PropertyEntityBaseParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.secret = kwargs.get('secret', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters_py3.py new file mode 100644 index 000000000000..e01077848439 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_entity_base_parameters_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PropertyEntityBaseParameters(Model): + """Property Entity Base Parameters set. + + :param tags: Optional tags that when provided can be used to filter the + property list. + :type tags: list[str] + :param secret: Determines whether the value is a secret and should be + encrypted or not. Default value is false. + :type secret: bool + """ + + _validation = { + 'tags': {'max_items': 32}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '[str]'}, + 'secret': {'key': 'secret', 'type': 'bool'}, + } + + def __init__(self, *, tags=None, secret: bool=None, **kwargs) -> None: + super(PropertyEntityBaseParameters, self).__init__(**kwargs) + self.tags = tags + self.secret = secret diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters.py new file mode 100644 index 000000000000..5a21c08aa09e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PropertyUpdateParameters(Model): + """Property update Parameters. + + :param tags: Optional tags that when provided can be used to filter the + property list. + :type tags: list[str] + :param secret: Determines whether the value is a secret and should be + encrypted or not. Default value is false. + :type secret: bool + :param display_name: Unique name of Property. It may contain only letters, + digits, period, dash, and underscore characters. + :type display_name: str + :param value: Value of the property. Can contain policy expressions. It + may not be empty or consist only of whitespace. + :type value: str + """ + + _validation = { + 'tags': {'max_items': 32}, + 'display_name': {'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + 'value': {'max_length': 4096, 'min_length': 1}, + } + + _attribute_map = { + 'tags': {'key': 'properties.tags', 'type': '[str]'}, + 'secret': {'key': 'properties.secret', 'type': 'bool'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PropertyUpdateParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.secret = kwargs.get('secret', None) + self.display_name = kwargs.get('display_name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters_py3.py new file mode 100644 index 000000000000..18a8e255b6c4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/property_update_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PropertyUpdateParameters(Model): + """Property update Parameters. + + :param tags: Optional tags that when provided can be used to filter the + property list. + :type tags: list[str] + :param secret: Determines whether the value is a secret and should be + encrypted or not. Default value is false. + :type secret: bool + :param display_name: Unique name of Property. It may contain only letters, + digits, period, dash, and underscore characters. + :type display_name: str + :param value: Value of the property. Can contain policy expressions. It + may not be empty or consist only of whitespace. + :type value: str + """ + + _validation = { + 'tags': {'max_items': 32}, + 'display_name': {'max_length': 256, 'min_length': 1, 'pattern': r'^[A-Za-z0-9-._]+$'}, + 'value': {'max_length': 4096, 'min_length': 1}, + } + + _attribute_map = { + 'tags': {'key': 'properties.tags', 'type': '[str]'}, + 'secret': {'key': 'properties.secret', 'type': 'bool'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + } + + def __init__(self, *, tags=None, secret: bool=None, display_name: str=None, value: str=None, **kwargs) -> None: + super(PropertyUpdateParameters, self).__init__(**kwargs) + self.tags = tags + self.secret = secret + self.display_name = display_name + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection.py new file mode 100644 index 000000000000..6785ba44e42a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterCollection(Model): + """Paged Quota Counter list representation. + + :param value: Quota counter values. + :type value: list[~azure.mgmt.apimanagement.models.QuotaCounterContract] + :param count: Total record count number across all pages. + :type count: long + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[QuotaCounterContract]'}, + 'count': {'key': 'count', 'type': 'long'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(QuotaCounterCollection, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.count = kwargs.get('count', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection_py3.py new file mode 100644 index 000000000000..498623ce8b55 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_collection_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterCollection(Model): + """Paged Quota Counter list representation. + + :param value: Quota counter values. + :type value: list[~azure.mgmt.apimanagement.models.QuotaCounterContract] + :param count: Total record count number across all pages. + :type count: long + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[QuotaCounterContract]'}, + 'count': {'key': 'count', 'type': 'long'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, count: int=None, next_link: str=None, **kwargs) -> None: + super(QuotaCounterCollection, self).__init__(**kwargs) + self.value = value + self.count = count + self.next_link = next_link diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract.py new file mode 100644 index 000000000000..ce05718d13f9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterContract(Model): + """Quota counter details. + + All required parameters must be populated in order to send to Azure. + + :param counter_key: Required. The Key value of the Counter. Must not be + empty. + :type counter_key: str + :param period_key: Required. Identifier of the Period for which the + counter was collected. Must not be empty. + :type period_key: str + :param period_start_time: Required. The date of the start of Counter + Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` + as specified by the ISO 8601 standard. + :type period_start_time: datetime + :param period_end_time: Required. The date of the end of Counter Period. + The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + specified by the ISO 8601 standard. + :type period_end_time: datetime + :param value: Quota Value Properties + :type value: + ~azure.mgmt.apimanagement.models.QuotaCounterValueContractProperties + """ + + _validation = { + 'counter_key': {'required': True, 'min_length': 1}, + 'period_key': {'required': True, 'min_length': 1}, + 'period_start_time': {'required': True}, + 'period_end_time': {'required': True}, + } + + _attribute_map = { + 'counter_key': {'key': 'counterKey', 'type': 'str'}, + 'period_key': {'key': 'periodKey', 'type': 'str'}, + 'period_start_time': {'key': 'periodStartTime', 'type': 'iso-8601'}, + 'period_end_time': {'key': 'periodEndTime', 'type': 'iso-8601'}, + 'value': {'key': 'value', 'type': 'QuotaCounterValueContractProperties'}, + } + + def __init__(self, **kwargs): + super(QuotaCounterContract, self).__init__(**kwargs) + self.counter_key = kwargs.get('counter_key', None) + self.period_key = kwargs.get('period_key', None) + self.period_start_time = kwargs.get('period_start_time', None) + self.period_end_time = kwargs.get('period_end_time', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract_py3.py new file mode 100644 index 000000000000..d3469173ad8b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_contract_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterContract(Model): + """Quota counter details. + + All required parameters must be populated in order to send to Azure. + + :param counter_key: Required. The Key value of the Counter. Must not be + empty. + :type counter_key: str + :param period_key: Required. Identifier of the Period for which the + counter was collected. Must not be empty. + :type period_key: str + :param period_start_time: Required. The date of the start of Counter + Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` + as specified by the ISO 8601 standard. + :type period_start_time: datetime + :param period_end_time: Required. The date of the end of Counter Period. + The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + specified by the ISO 8601 standard. + :type period_end_time: datetime + :param value: Quota Value Properties + :type value: + ~azure.mgmt.apimanagement.models.QuotaCounterValueContractProperties + """ + + _validation = { + 'counter_key': {'required': True, 'min_length': 1}, + 'period_key': {'required': True, 'min_length': 1}, + 'period_start_time': {'required': True}, + 'period_end_time': {'required': True}, + } + + _attribute_map = { + 'counter_key': {'key': 'counterKey', 'type': 'str'}, + 'period_key': {'key': 'periodKey', 'type': 'str'}, + 'period_start_time': {'key': 'periodStartTime', 'type': 'iso-8601'}, + 'period_end_time': {'key': 'periodEndTime', 'type': 'iso-8601'}, + 'value': {'key': 'value', 'type': 'QuotaCounterValueContractProperties'}, + } + + def __init__(self, *, counter_key: str, period_key: str, period_start_time, period_end_time, value=None, **kwargs) -> None: + super(QuotaCounterContract, self).__init__(**kwargs) + self.counter_key = counter_key + self.period_key = period_key + self.period_start_time = period_start_time + self.period_end_time = period_end_time + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract.py new file mode 100644 index 000000000000..b09ad9d57dba --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterValueContract(Model): + """Quota counter value details. + + :param calls_count: Number of times Counter was called. + :type calls_count: int + :param kb_transferred: Data Transferred in KiloBytes. + :type kb_transferred: float + """ + + _attribute_map = { + 'calls_count': {'key': 'value.callsCount', 'type': 'int'}, + 'kb_transferred': {'key': 'value.kbTransferred', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(QuotaCounterValueContract, self).__init__(**kwargs) + self.calls_count = kwargs.get('calls_count', None) + self.kb_transferred = kwargs.get('kb_transferred', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties.py new file mode 100644 index 000000000000..f3109571e5a2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterValueContractProperties(Model): + """Quota counter value details. + + :param calls_count: Number of times Counter was called. + :type calls_count: int + :param kb_transferred: Data Transferred in KiloBytes. + :type kb_transferred: float + """ + + _attribute_map = { + 'calls_count': {'key': 'callsCount', 'type': 'int'}, + 'kb_transferred': {'key': 'kbTransferred', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(QuotaCounterValueContractProperties, self).__init__(**kwargs) + self.calls_count = kwargs.get('calls_count', None) + self.kb_transferred = kwargs.get('kb_transferred', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties_py3.py new file mode 100644 index 000000000000..d425c680cab8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_properties_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterValueContractProperties(Model): + """Quota counter value details. + + :param calls_count: Number of times Counter was called. + :type calls_count: int + :param kb_transferred: Data Transferred in KiloBytes. + :type kb_transferred: float + """ + + _attribute_map = { + 'calls_count': {'key': 'callsCount', 'type': 'int'}, + 'kb_transferred': {'key': 'kbTransferred', 'type': 'float'}, + } + + def __init__(self, *, calls_count: int=None, kb_transferred: float=None, **kwargs) -> None: + super(QuotaCounterValueContractProperties, self).__init__(**kwargs) + self.calls_count = calls_count + self.kb_transferred = kb_transferred diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_py3.py new file mode 100644 index 000000000000..2a2d0b9216e9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/quota_counter_value_contract_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCounterValueContract(Model): + """Quota counter value details. + + :param calls_count: Number of times Counter was called. + :type calls_count: int + :param kb_transferred: Data Transferred in KiloBytes. + :type kb_transferred: float + """ + + _attribute_map = { + 'calls_count': {'key': 'value.callsCount', 'type': 'int'}, + 'kb_transferred': {'key': 'value.kbTransferred', 'type': 'float'}, + } + + def __init__(self, *, calls_count: int=None, kb_transferred: float=None, **kwargs) -> None: + super(QuotaCounterValueContract, self).__init__(**kwargs) + self.calls_count = calls_count + self.kb_transferred = kb_transferred diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection.py new file mode 100644 index 000000000000..e56dbf2f3a19 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecipientEmailCollection(Model): + """Paged Recipient User list representation. + + :param value: Page values. + :type value: list[~azure.mgmt.apimanagement.models.RecipientEmailContract] + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RecipientEmailContract]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RecipientEmailCollection, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection_py3.py new file mode 100644 index 000000000000..20592d1ac7ce --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_collection_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecipientEmailCollection(Model): + """Paged Recipient User list representation. + + :param value: Page values. + :type value: list[~azure.mgmt.apimanagement.models.RecipientEmailContract] + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RecipientEmailContract]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(RecipientEmailCollection, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract.py new file mode 100644 index 000000000000..862e3f09c0f1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class RecipientEmailContract(Resource): + """Recipient Email details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param email: User Email subscribed to notification. + :type email: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RecipientEmailContract, self).__init__(**kwargs) + self.email = kwargs.get('email', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract_py3.py new file mode 100644 index 000000000000..175381652c07 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_email_contract_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class RecipientEmailContract(Resource): + """Recipient Email details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param email: User Email subscribed to notification. + :type email: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + } + + def __init__(self, *, email: str=None, **kwargs) -> None: + super(RecipientEmailContract, self).__init__(**kwargs) + self.email = email diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection.py new file mode 100644 index 000000000000..8555f416e541 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecipientUserCollection(Model): + """Paged Recipient User list representation. + + :param value: Page values. + :type value: list[~azure.mgmt.apimanagement.models.RecipientUserContract] + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RecipientUserContract]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RecipientUserCollection, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection_py3.py new file mode 100644 index 000000000000..1efa3a09c093 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_collection_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecipientUserCollection(Model): + """Paged Recipient User list representation. + + :param value: Page values. + :type value: list[~azure.mgmt.apimanagement.models.RecipientUserContract] + :param next_link: Next page link if any. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RecipientUserContract]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(RecipientUserCollection, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract.py new file mode 100644 index 000000000000..d357cd431be5 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class RecipientUserContract(Resource): + """Recipient User details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param user_id: API Management UserId subscribed to notification. + :type user_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RecipientUserContract, self).__init__(**kwargs) + self.user_id = kwargs.get('user_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract_py3.py new file mode 100644 index 000000000000..a3112c65a24d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipient_user_contract_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class RecipientUserContract(Resource): + """Recipient User details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param user_id: API Management UserId subscribed to notification. + :type user_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'user_id': {'key': 'properties.userId', 'type': 'str'}, + } + + def __init__(self, *, user_id: str=None, **kwargs) -> None: + super(RecipientUserContract, self).__init__(**kwargs) + self.user_id = user_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties.py new file mode 100644 index 000000000000..ec3457181ae8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecipientsContractProperties(Model): + """Notification Parameter contract. + + :param emails: List of Emails subscribed for the notification. + :type emails: list[str] + :param users: List of Users subscribed for the notification. + :type users: list[str] + """ + + _attribute_map = { + 'emails': {'key': 'emails', 'type': '[str]'}, + 'users': {'key': 'users', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(RecipientsContractProperties, self).__init__(**kwargs) + self.emails = kwargs.get('emails', None) + self.users = kwargs.get('users', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties_py3.py new file mode 100644 index 000000000000..4ee05780273d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/recipients_contract_properties_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecipientsContractProperties(Model): + """Notification Parameter contract. + + :param emails: List of Emails subscribed for the notification. + :type emails: list[str] + :param users: List of Users subscribed for the notification. + :type users: list[str] + """ + + _attribute_map = { + 'emails': {'key': 'emails', 'type': '[str]'}, + 'users': {'key': 'users', 'type': '[str]'}, + } + + def __init__(self, *, emails=None, users=None, **kwargs) -> None: + super(RecipientsContractProperties, self).__init__(**kwargs) + self.emails = emails + self.users = users diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract.py new file mode 100644 index 000000000000..b45ef72db4c0 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegionContract(Model): + """Region profile. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Region name. + :vartype name: str + :param is_master_region: whether Region is the master region. + :type is_master_region: bool + :param is_deleted: whether Region is deleted. + :type is_deleted: bool + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'is_master_region': {'key': 'isMasterRegion', 'type': 'bool'}, + 'is_deleted': {'key': 'isDeleted', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RegionContract, self).__init__(**kwargs) + self.name = None + self.is_master_region = kwargs.get('is_master_region', None) + self.is_deleted = kwargs.get('is_deleted', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_paged.py new file mode 100644 index 000000000000..d2d31024ffdd --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class RegionContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`RegionContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RegionContract]'} + } + + def __init__(self, *args, **kwargs): + + super(RegionContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_py3.py new file mode 100644 index 000000000000..6818fd3baca6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/region_contract_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegionContract(Model): + """Region profile. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Region name. + :vartype name: str + :param is_master_region: whether Region is the master region. + :type is_master_region: bool + :param is_deleted: whether Region is deleted. + :type is_deleted: bool + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'is_master_region': {'key': 'isMasterRegion', 'type': 'bool'}, + 'is_deleted': {'key': 'isDeleted', 'type': 'bool'}, + } + + def __init__(self, *, is_master_region: bool=None, is_deleted: bool=None, **kwargs) -> None: + super(RegionContract, self).__init__(**kwargs) + self.name = None + self.is_master_region = is_master_region + self.is_deleted = is_deleted diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties.py new file mode 100644 index 000000000000..d104cb341470 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistrationDelegationSettingsProperties(Model): + """User registration delegation settings properties. + + :param enabled: Enable or disable delegation for user registration. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RegistrationDelegationSettingsProperties, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties_py3.py new file mode 100644 index 000000000000..26b410a0720b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/registration_delegation_settings_properties_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistrationDelegationSettingsProperties(Model): + """User registration delegation settings properties. + + :param enabled: Enable or disable delegation for user registration. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(RegistrationDelegationSettingsProperties, self).__init__(**kwargs) + self.enabled = enabled diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract.py new file mode 100644 index 000000000000..21d19e4184e0 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract.py @@ -0,0 +1,153 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReportRecordContract(Model): + """Report data. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: Name depending on report endpoint specifies product, API, + operation or developer name. + :type name: str + :param timestamp: Start of aggregation period. The date conforms to the + following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :type timestamp: datetime + :param interval: Length of aggregation period. Interval must be multiple + of 15 minutes and may not be zero. The value should be in ISO 8601 format + (http://en.wikipedia.org/wiki/ISO_8601#Durations). + :type interval: str + :param country: Country to which this record data is related. + :type country: str + :param region: Country region to which this record data is related. + :type region: str + :param zip: Zip code to which this record data is related. + :type zip: str + :ivar user_id: User identifier path. /users/{userId} + :vartype user_id: str + :ivar product_id: Product identifier path. /products/{productId} + :vartype product_id: str + :param api_id: API identifier path. /apis/{apiId} + :type api_id: str + :param operation_id: Operation identifier path. + /apis/{apiId}/operations/{operationId} + :type operation_id: str + :param api_region: API region identifier. + :type api_region: str + :param subscription_id: Subscription identifier path. + /subscriptions/{subscriptionId} + :type subscription_id: str + :param call_count_success: Number of successful calls. This includes calls + returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and + HttpStatusCode.TemporaryRedirect + :type call_count_success: int + :param call_count_blocked: Number of calls blocked due to invalid + credentials. This includes calls returning HttpStatusCode.Unauthorized and + HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests + :type call_count_blocked: int + :param call_count_failed: Number of calls failed due to proxy or backend + errors. This includes calls returning HttpStatusCode.BadRequest(400) and + any Code between HttpStatusCode.InternalServerError (500) and 600 + :type call_count_failed: int + :param call_count_other: Number of other calls. + :type call_count_other: int + :param call_count_total: Total number of calls. + :type call_count_total: int + :param bandwidth: Bandwidth consumed. + :type bandwidth: long + :param cache_hit_count: Number of times when content was served from cache + policy. + :type cache_hit_count: int + :param cache_miss_count: Number of times content was fetched from backend. + :type cache_miss_count: int + :param api_time_avg: Average time it took to process request. + :type api_time_avg: float + :param api_time_min: Minimum time it took to process request. + :type api_time_min: float + :param api_time_max: Maximum time it took to process request. + :type api_time_max: float + :param service_time_avg: Average time it took to process request on + backend. + :type service_time_avg: float + :param service_time_min: Minimum time it took to process request on + backend. + :type service_time_min: float + :param service_time_max: Maximum time it took to process request on + backend. + :type service_time_max: float + """ + + _validation = { + 'user_id': {'readonly': True}, + 'product_id': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'interval': {'key': 'interval', 'type': 'str'}, + 'country': {'key': 'country', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'zip': {'key': 'zip', 'type': 'str'}, + 'user_id': {'key': 'userId', 'type': 'str'}, + 'product_id': {'key': 'productId', 'type': 'str'}, + 'api_id': {'key': 'apiId', 'type': 'str'}, + 'operation_id': {'key': 'operationId', 'type': 'str'}, + 'api_region': {'key': 'apiRegion', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'call_count_success': {'key': 'callCountSuccess', 'type': 'int'}, + 'call_count_blocked': {'key': 'callCountBlocked', 'type': 'int'}, + 'call_count_failed': {'key': 'callCountFailed', 'type': 'int'}, + 'call_count_other': {'key': 'callCountOther', 'type': 'int'}, + 'call_count_total': {'key': 'callCountTotal', 'type': 'int'}, + 'bandwidth': {'key': 'bandwidth', 'type': 'long'}, + 'cache_hit_count': {'key': 'cacheHitCount', 'type': 'int'}, + 'cache_miss_count': {'key': 'cacheMissCount', 'type': 'int'}, + 'api_time_avg': {'key': 'apiTimeAvg', 'type': 'float'}, + 'api_time_min': {'key': 'apiTimeMin', 'type': 'float'}, + 'api_time_max': {'key': 'apiTimeMax', 'type': 'float'}, + 'service_time_avg': {'key': 'serviceTimeAvg', 'type': 'float'}, + 'service_time_min': {'key': 'serviceTimeMin', 'type': 'float'}, + 'service_time_max': {'key': 'serviceTimeMax', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(ReportRecordContract, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.timestamp = kwargs.get('timestamp', None) + self.interval = kwargs.get('interval', None) + self.country = kwargs.get('country', None) + self.region = kwargs.get('region', None) + self.zip = kwargs.get('zip', None) + self.user_id = None + self.product_id = None + self.api_id = kwargs.get('api_id', None) + self.operation_id = kwargs.get('operation_id', None) + self.api_region = kwargs.get('api_region', None) + self.subscription_id = kwargs.get('subscription_id', None) + self.call_count_success = kwargs.get('call_count_success', None) + self.call_count_blocked = kwargs.get('call_count_blocked', None) + self.call_count_failed = kwargs.get('call_count_failed', None) + self.call_count_other = kwargs.get('call_count_other', None) + self.call_count_total = kwargs.get('call_count_total', None) + self.bandwidth = kwargs.get('bandwidth', None) + self.cache_hit_count = kwargs.get('cache_hit_count', None) + self.cache_miss_count = kwargs.get('cache_miss_count', None) + self.api_time_avg = kwargs.get('api_time_avg', None) + self.api_time_min = kwargs.get('api_time_min', None) + self.api_time_max = kwargs.get('api_time_max', None) + self.service_time_avg = kwargs.get('service_time_avg', None) + self.service_time_min = kwargs.get('service_time_min', None) + self.service_time_max = kwargs.get('service_time_max', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_paged.py new file mode 100644 index 000000000000..94a23d6b3fd8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ReportRecordContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`ReportRecordContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ReportRecordContract]'} + } + + def __init__(self, *args, **kwargs): + + super(ReportRecordContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_py3.py new file mode 100644 index 000000000000..465870d5fc01 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/report_record_contract_py3.py @@ -0,0 +1,153 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReportRecordContract(Model): + """Report data. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: Name depending on report endpoint specifies product, API, + operation or developer name. + :type name: str + :param timestamp: Start of aggregation period. The date conforms to the + following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :type timestamp: datetime + :param interval: Length of aggregation period. Interval must be multiple + of 15 minutes and may not be zero. The value should be in ISO 8601 format + (http://en.wikipedia.org/wiki/ISO_8601#Durations). + :type interval: str + :param country: Country to which this record data is related. + :type country: str + :param region: Country region to which this record data is related. + :type region: str + :param zip: Zip code to which this record data is related. + :type zip: str + :ivar user_id: User identifier path. /users/{userId} + :vartype user_id: str + :ivar product_id: Product identifier path. /products/{productId} + :vartype product_id: str + :param api_id: API identifier path. /apis/{apiId} + :type api_id: str + :param operation_id: Operation identifier path. + /apis/{apiId}/operations/{operationId} + :type operation_id: str + :param api_region: API region identifier. + :type api_region: str + :param subscription_id: Subscription identifier path. + /subscriptions/{subscriptionId} + :type subscription_id: str + :param call_count_success: Number of successful calls. This includes calls + returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and + HttpStatusCode.TemporaryRedirect + :type call_count_success: int + :param call_count_blocked: Number of calls blocked due to invalid + credentials. This includes calls returning HttpStatusCode.Unauthorized and + HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests + :type call_count_blocked: int + :param call_count_failed: Number of calls failed due to proxy or backend + errors. This includes calls returning HttpStatusCode.BadRequest(400) and + any Code between HttpStatusCode.InternalServerError (500) and 600 + :type call_count_failed: int + :param call_count_other: Number of other calls. + :type call_count_other: int + :param call_count_total: Total number of calls. + :type call_count_total: int + :param bandwidth: Bandwidth consumed. + :type bandwidth: long + :param cache_hit_count: Number of times when content was served from cache + policy. + :type cache_hit_count: int + :param cache_miss_count: Number of times content was fetched from backend. + :type cache_miss_count: int + :param api_time_avg: Average time it took to process request. + :type api_time_avg: float + :param api_time_min: Minimum time it took to process request. + :type api_time_min: float + :param api_time_max: Maximum time it took to process request. + :type api_time_max: float + :param service_time_avg: Average time it took to process request on + backend. + :type service_time_avg: float + :param service_time_min: Minimum time it took to process request on + backend. + :type service_time_min: float + :param service_time_max: Maximum time it took to process request on + backend. + :type service_time_max: float + """ + + _validation = { + 'user_id': {'readonly': True}, + 'product_id': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'interval': {'key': 'interval', 'type': 'str'}, + 'country': {'key': 'country', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'zip': {'key': 'zip', 'type': 'str'}, + 'user_id': {'key': 'userId', 'type': 'str'}, + 'product_id': {'key': 'productId', 'type': 'str'}, + 'api_id': {'key': 'apiId', 'type': 'str'}, + 'operation_id': {'key': 'operationId', 'type': 'str'}, + 'api_region': {'key': 'apiRegion', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'call_count_success': {'key': 'callCountSuccess', 'type': 'int'}, + 'call_count_blocked': {'key': 'callCountBlocked', 'type': 'int'}, + 'call_count_failed': {'key': 'callCountFailed', 'type': 'int'}, + 'call_count_other': {'key': 'callCountOther', 'type': 'int'}, + 'call_count_total': {'key': 'callCountTotal', 'type': 'int'}, + 'bandwidth': {'key': 'bandwidth', 'type': 'long'}, + 'cache_hit_count': {'key': 'cacheHitCount', 'type': 'int'}, + 'cache_miss_count': {'key': 'cacheMissCount', 'type': 'int'}, + 'api_time_avg': {'key': 'apiTimeAvg', 'type': 'float'}, + 'api_time_min': {'key': 'apiTimeMin', 'type': 'float'}, + 'api_time_max': {'key': 'apiTimeMax', 'type': 'float'}, + 'service_time_avg': {'key': 'serviceTimeAvg', 'type': 'float'}, + 'service_time_min': {'key': 'serviceTimeMin', 'type': 'float'}, + 'service_time_max': {'key': 'serviceTimeMax', 'type': 'float'}, + } + + def __init__(self, *, name: str=None, timestamp=None, interval: str=None, country: str=None, region: str=None, zip: str=None, api_id: str=None, operation_id: str=None, api_region: str=None, subscription_id: str=None, call_count_success: int=None, call_count_blocked: int=None, call_count_failed: int=None, call_count_other: int=None, call_count_total: int=None, bandwidth: int=None, cache_hit_count: int=None, cache_miss_count: int=None, api_time_avg: float=None, api_time_min: float=None, api_time_max: float=None, service_time_avg: float=None, service_time_min: float=None, service_time_max: float=None, **kwargs) -> None: + super(ReportRecordContract, self).__init__(**kwargs) + self.name = name + self.timestamp = timestamp + self.interval = interval + self.country = country + self.region = region + self.zip = zip + self.user_id = None + self.product_id = None + self.api_id = api_id + self.operation_id = operation_id + self.api_region = api_region + self.subscription_id = subscription_id + self.call_count_success = call_count_success + self.call_count_blocked = call_count_blocked + self.call_count_failed = call_count_failed + self.call_count_other = call_count_other + self.call_count_total = call_count_total + self.bandwidth = bandwidth + self.cache_hit_count = cache_hit_count + self.cache_miss_count = cache_miss_count + self.api_time_avg = api_time_avg + self.api_time_min = api_time_min + self.api_time_max = api_time_max + self.service_time_avg = service_time_avg + self.service_time_min = service_time_min + self.service_time_max = service_time_max diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract.py new file mode 100644 index 000000000000..3bdfe5e8581e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RepresentationContract(Model): + """Operation request/response representation details. + + All required parameters must be populated in order to send to Azure. + + :param content_type: Required. Specifies a registered or custom content + type for this representation, e.g. application/xml. + :type content_type: str + :param sample: An example of the representation. + :type sample: str + :param schema_id: Schema identifier. Applicable only if 'contentType' + value is neither 'application/x-www-form-urlencoded' nor + 'multipart/form-data'. + :type schema_id: str + :param type_name: Type name defined by the schema. Applicable only if + 'contentType' value is neither 'application/x-www-form-urlencoded' nor + 'multipart/form-data'. + :type type_name: str + :param form_parameters: Collection of form parameters. Required if + 'contentType' value is either 'application/x-www-form-urlencoded' or + 'multipart/form-data'.. + :type form_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + """ + + _validation = { + 'content_type': {'required': True}, + } + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'sample': {'key': 'sample', 'type': 'str'}, + 'schema_id': {'key': 'schemaId', 'type': 'str'}, + 'type_name': {'key': 'typeName', 'type': 'str'}, + 'form_parameters': {'key': 'formParameters', 'type': '[ParameterContract]'}, + } + + def __init__(self, **kwargs): + super(RepresentationContract, self).__init__(**kwargs) + self.content_type = kwargs.get('content_type', None) + self.sample = kwargs.get('sample', None) + self.schema_id = kwargs.get('schema_id', None) + self.type_name = kwargs.get('type_name', None) + self.form_parameters = kwargs.get('form_parameters', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract_py3.py new file mode 100644 index 000000000000..2dc5be839fe4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/representation_contract_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RepresentationContract(Model): + """Operation request/response representation details. + + All required parameters must be populated in order to send to Azure. + + :param content_type: Required. Specifies a registered or custom content + type for this representation, e.g. application/xml. + :type content_type: str + :param sample: An example of the representation. + :type sample: str + :param schema_id: Schema identifier. Applicable only if 'contentType' + value is neither 'application/x-www-form-urlencoded' nor + 'multipart/form-data'. + :type schema_id: str + :param type_name: Type name defined by the schema. Applicable only if + 'contentType' value is neither 'application/x-www-form-urlencoded' nor + 'multipart/form-data'. + :type type_name: str + :param form_parameters: Collection of form parameters. Required if + 'contentType' value is either 'application/x-www-form-urlencoded' or + 'multipart/form-data'.. + :type form_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + """ + + _validation = { + 'content_type': {'required': True}, + } + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'sample': {'key': 'sample', 'type': 'str'}, + 'schema_id': {'key': 'schemaId', 'type': 'str'}, + 'type_name': {'key': 'typeName', 'type': 'str'}, + 'form_parameters': {'key': 'formParameters', 'type': '[ParameterContract]'}, + } + + def __init__(self, *, content_type: str, sample: str=None, schema_id: str=None, type_name: str=None, form_parameters=None, **kwargs) -> None: + super(RepresentationContract, self).__init__(**kwargs) + self.content_type = content_type + self.sample = sample + self.schema_id = schema_id + self.type_name = type_name + self.form_parameters = form_parameters diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract.py new file mode 100644 index 000000000000..c576288d0328 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RequestContract(Model): + """Operation request details. + + :param description: Operation request description. + :type description: str + :param query_parameters: Collection of operation request query parameters. + :type query_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param headers: Collection of operation request headers. + :type headers: list[~azure.mgmt.apimanagement.models.ParameterContract] + :param representations: Collection of operation request representations. + :type representations: + list[~azure.mgmt.apimanagement.models.RepresentationContract] + """ + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'query_parameters': {'key': 'queryParameters', 'type': '[ParameterContract]'}, + 'headers': {'key': 'headers', 'type': '[ParameterContract]'}, + 'representations': {'key': 'representations', 'type': '[RepresentationContract]'}, + } + + def __init__(self, **kwargs): + super(RequestContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.query_parameters = kwargs.get('query_parameters', None) + self.headers = kwargs.get('headers', None) + self.representations = kwargs.get('representations', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract_py3.py new file mode 100644 index 000000000000..b2d8810a7be0 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_contract_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RequestContract(Model): + """Operation request details. + + :param description: Operation request description. + :type description: str + :param query_parameters: Collection of operation request query parameters. + :type query_parameters: + list[~azure.mgmt.apimanagement.models.ParameterContract] + :param headers: Collection of operation request headers. + :type headers: list[~azure.mgmt.apimanagement.models.ParameterContract] + :param representations: Collection of operation request representations. + :type representations: + list[~azure.mgmt.apimanagement.models.RepresentationContract] + """ + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'query_parameters': {'key': 'queryParameters', 'type': '[ParameterContract]'}, + 'headers': {'key': 'headers', 'type': '[ParameterContract]'}, + 'representations': {'key': 'representations', 'type': '[RepresentationContract]'}, + } + + def __init__(self, *, description: str=None, query_parameters=None, headers=None, representations=None, **kwargs) -> None: + super(RequestContract, self).__init__(**kwargs) + self.description = description + self.query_parameters = query_parameters + self.headers = headers + self.representations = representations diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract.py new file mode 100644 index 000000000000..b63a4c377d97 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract.py @@ -0,0 +1,114 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RequestReportRecordContract(Model): + """Request Report data. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param api_id: API identifier path. /apis/{apiId} + :type api_id: str + :param operation_id: Operation identifier path. + /apis/{apiId}/operations/{operationId} + :type operation_id: str + :ivar product_id: Product identifier path. /products/{productId} + :vartype product_id: str + :ivar user_id: User identifier path. /users/{userId} + :vartype user_id: str + :param method: The HTTP method associated with this request.. + :type method: str + :param url: The full URL associated with this request. + :type url: str + :param ip_address: The client IP address associated with this request. + :type ip_address: str + :param backend_response_code: The HTTP status code received by the gateway + as a result of forwarding this request to the backend. + :type backend_response_code: str + :param response_code: The HTTP status code returned by the gateway. + :type response_code: int + :param response_size: The size of the response returned by the gateway. + :type response_size: int + :param timestamp: The date and time when this request was received by the + gateway in ISO 8601 format. + :type timestamp: datetime + :param cache: Specifies if response cache was involved in generating the + response. If the value is none, the cache was not used. If the value is + hit, cached response was returned. If the value is miss, the cache was + used but lookup resulted in a miss and request was fulfilled by the + backend. + :type cache: str + :param api_time: The total time it took to process this request. + :type api_time: float + :param service_time: he time it took to forward this request to the + backend and get the response back. + :type service_time: float + :param api_region: Azure region where the gateway that processed this + request is located. + :type api_region: str + :param subscription_id: Subscription identifier path. + /subscriptions/{subscriptionId} + :type subscription_id: str + :param request_id: Request Identifier. + :type request_id: str + :param request_size: The size of this request.. + :type request_size: int + """ + + _validation = { + 'product_id': {'readonly': True}, + 'user_id': {'readonly': True}, + } + + _attribute_map = { + 'api_id': {'key': 'apiId', 'type': 'str'}, + 'operation_id': {'key': 'operationId', 'type': 'str'}, + 'product_id': {'key': 'productId', 'type': 'str'}, + 'user_id': {'key': 'userId', 'type': 'str'}, + 'method': {'key': 'method', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'backend_response_code': {'key': 'backendResponseCode', 'type': 'str'}, + 'response_code': {'key': 'responseCode', 'type': 'int'}, + 'response_size': {'key': 'responseSize', 'type': 'int'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'cache': {'key': 'cache', 'type': 'str'}, + 'api_time': {'key': 'apiTime', 'type': 'float'}, + 'service_time': {'key': 'serviceTime', 'type': 'float'}, + 'api_region': {'key': 'apiRegion', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'request_id': {'key': 'requestId', 'type': 'str'}, + 'request_size': {'key': 'requestSize', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(RequestReportRecordContract, self).__init__(**kwargs) + self.api_id = kwargs.get('api_id', None) + self.operation_id = kwargs.get('operation_id', None) + self.product_id = None + self.user_id = None + self.method = kwargs.get('method', None) + self.url = kwargs.get('url', None) + self.ip_address = kwargs.get('ip_address', None) + self.backend_response_code = kwargs.get('backend_response_code', None) + self.response_code = kwargs.get('response_code', None) + self.response_size = kwargs.get('response_size', None) + self.timestamp = kwargs.get('timestamp', None) + self.cache = kwargs.get('cache', None) + self.api_time = kwargs.get('api_time', None) + self.service_time = kwargs.get('service_time', None) + self.api_region = kwargs.get('api_region', None) + self.subscription_id = kwargs.get('subscription_id', None) + self.request_id = kwargs.get('request_id', None) + self.request_size = kwargs.get('request_size', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_paged.py new file mode 100644 index 000000000000..f5cc659ead9e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class RequestReportRecordContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`RequestReportRecordContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RequestReportRecordContract]'} + } + + def __init__(self, *args, **kwargs): + + super(RequestReportRecordContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_py3.py new file mode 100644 index 000000000000..c1c1e53646d2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/request_report_record_contract_py3.py @@ -0,0 +1,114 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RequestReportRecordContract(Model): + """Request Report data. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param api_id: API identifier path. /apis/{apiId} + :type api_id: str + :param operation_id: Operation identifier path. + /apis/{apiId}/operations/{operationId} + :type operation_id: str + :ivar product_id: Product identifier path. /products/{productId} + :vartype product_id: str + :ivar user_id: User identifier path. /users/{userId} + :vartype user_id: str + :param method: The HTTP method associated with this request.. + :type method: str + :param url: The full URL associated with this request. + :type url: str + :param ip_address: The client IP address associated with this request. + :type ip_address: str + :param backend_response_code: The HTTP status code received by the gateway + as a result of forwarding this request to the backend. + :type backend_response_code: str + :param response_code: The HTTP status code returned by the gateway. + :type response_code: int + :param response_size: The size of the response returned by the gateway. + :type response_size: int + :param timestamp: The date and time when this request was received by the + gateway in ISO 8601 format. + :type timestamp: datetime + :param cache: Specifies if response cache was involved in generating the + response. If the value is none, the cache was not used. If the value is + hit, cached response was returned. If the value is miss, the cache was + used but lookup resulted in a miss and request was fulfilled by the + backend. + :type cache: str + :param api_time: The total time it took to process this request. + :type api_time: float + :param service_time: he time it took to forward this request to the + backend and get the response back. + :type service_time: float + :param api_region: Azure region where the gateway that processed this + request is located. + :type api_region: str + :param subscription_id: Subscription identifier path. + /subscriptions/{subscriptionId} + :type subscription_id: str + :param request_id: Request Identifier. + :type request_id: str + :param request_size: The size of this request.. + :type request_size: int + """ + + _validation = { + 'product_id': {'readonly': True}, + 'user_id': {'readonly': True}, + } + + _attribute_map = { + 'api_id': {'key': 'apiId', 'type': 'str'}, + 'operation_id': {'key': 'operationId', 'type': 'str'}, + 'product_id': {'key': 'productId', 'type': 'str'}, + 'user_id': {'key': 'userId', 'type': 'str'}, + 'method': {'key': 'method', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'backend_response_code': {'key': 'backendResponseCode', 'type': 'str'}, + 'response_code': {'key': 'responseCode', 'type': 'int'}, + 'response_size': {'key': 'responseSize', 'type': 'int'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'cache': {'key': 'cache', 'type': 'str'}, + 'api_time': {'key': 'apiTime', 'type': 'float'}, + 'service_time': {'key': 'serviceTime', 'type': 'float'}, + 'api_region': {'key': 'apiRegion', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'request_id': {'key': 'requestId', 'type': 'str'}, + 'request_size': {'key': 'requestSize', 'type': 'int'}, + } + + def __init__(self, *, api_id: str=None, operation_id: str=None, method: str=None, url: str=None, ip_address: str=None, backend_response_code: str=None, response_code: int=None, response_size: int=None, timestamp=None, cache: str=None, api_time: float=None, service_time: float=None, api_region: str=None, subscription_id: str=None, request_id: str=None, request_size: int=None, **kwargs) -> None: + super(RequestReportRecordContract, self).__init__(**kwargs) + self.api_id = api_id + self.operation_id = operation_id + self.product_id = None + self.user_id = None + self.method = method + self.url = url + self.ip_address = ip_address + self.backend_response_code = backend_response_code + self.response_code = response_code + self.response_size = response_size + self.timestamp = timestamp + self.cache = cache + self.api_time = api_time + self.service_time = service_time + self.api_region = api_region + self.subscription_id = subscription_id + self.request_id = request_id + self.request_size = request_size diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource.py new file mode 100644 index 000000000000..228f9a4bad1a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The Resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_py3.py new file mode 100644 index 000000000000..d847e3f57d60 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The Resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku.py new file mode 100644 index 000000000000..c130ac57f637 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceSku(Model): + """Describes an available API Management SKU. + + :param name: Name of the Sku. Possible values include: 'Developer', + 'Standard', 'Premium', 'Basic', 'Consumption' + :type name: str or ~azure.mgmt.apimanagement.models.SkuType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity.py new file mode 100644 index 000000000000..54109ac235b1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceSkuCapacity(Model): + """Describes scaling information of a SKU. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar minimum: The minimum capacity. + :vartype minimum: int + :ivar maximum: The maximum capacity that can be set. + :vartype maximum: int + :ivar default: The default capacity. + :vartype default: int + :ivar scale_type: The scale type applicable to the sku. Possible values + include: 'automatic', 'manual', 'none' + :vartype scale_type: str or + ~azure.mgmt.apimanagement.models.ResourceSkuCapacityScaleType + """ + + _validation = { + 'minimum': {'readonly': True}, + 'maximum': {'readonly': True}, + 'default': {'readonly': True}, + 'scale_type': {'readonly': True}, + } + + _attribute_map = { + 'minimum': {'key': 'minimum', 'type': 'int'}, + 'maximum': {'key': 'maximum', 'type': 'int'}, + 'default': {'key': 'default', 'type': 'int'}, + 'scale_type': {'key': 'scaleType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceSkuCapacity, self).__init__(**kwargs) + self.minimum = None + self.maximum = None + self.default = None + self.scale_type = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity_py3.py new file mode 100644 index 000000000000..27d799babc94 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_capacity_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceSkuCapacity(Model): + """Describes scaling information of a SKU. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar minimum: The minimum capacity. + :vartype minimum: int + :ivar maximum: The maximum capacity that can be set. + :vartype maximum: int + :ivar default: The default capacity. + :vartype default: int + :ivar scale_type: The scale type applicable to the sku. Possible values + include: 'automatic', 'manual', 'none' + :vartype scale_type: str or + ~azure.mgmt.apimanagement.models.ResourceSkuCapacityScaleType + """ + + _validation = { + 'minimum': {'readonly': True}, + 'maximum': {'readonly': True}, + 'default': {'readonly': True}, + 'scale_type': {'readonly': True}, + } + + _attribute_map = { + 'minimum': {'key': 'minimum', 'type': 'int'}, + 'maximum': {'key': 'maximum', 'type': 'int'}, + 'default': {'key': 'default', 'type': 'int'}, + 'scale_type': {'key': 'scaleType', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ResourceSkuCapacity, self).__init__(**kwargs) + self.minimum = None + self.maximum = None + self.default = None + self.scale_type = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_py3.py new file mode 100644 index 000000000000..7e30812cefcd --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceSku(Model): + """Describes an available API Management SKU. + + :param name: Name of the Sku. Possible values include: 'Developer', + 'Standard', 'Premium', 'Basic', 'Consumption' + :type name: str or ~azure.mgmt.apimanagement.models.SkuType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(ResourceSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result.py new file mode 100644 index 000000000000..7457c7bd9d0f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceSkuResult(Model): + """Describes an available API Management service SKU. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_type: The type of resource the SKU applies to. + :vartype resource_type: str + :ivar sku: Specifies API Management SKU. + :vartype sku: ~azure.mgmt.apimanagement.models.ResourceSku + :ivar capacity: Specifies the number of API Management units. + :vartype capacity: ~azure.mgmt.apimanagement.models.ResourceSkuCapacity + """ + + _validation = { + 'resource_type': {'readonly': True}, + 'sku': {'readonly': True}, + 'capacity': {'readonly': True}, + } + + _attribute_map = { + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ResourceSku'}, + 'capacity': {'key': 'capacity', 'type': 'ResourceSkuCapacity'}, + } + + def __init__(self, **kwargs): + super(ResourceSkuResult, self).__init__(**kwargs) + self.resource_type = None + self.sku = None + self.capacity = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_paged.py new file mode 100644 index 000000000000..1a888249f3d9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ResourceSkuResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`ResourceSkuResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ResourceSkuResult]'} + } + + def __init__(self, *args, **kwargs): + + super(ResourceSkuResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_py3.py new file mode 100644 index 000000000000..2a35b75ee655 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/resource_sku_result_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceSkuResult(Model): + """Describes an available API Management service SKU. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_type: The type of resource the SKU applies to. + :vartype resource_type: str + :ivar sku: Specifies API Management SKU. + :vartype sku: ~azure.mgmt.apimanagement.models.ResourceSku + :ivar capacity: Specifies the number of API Management units. + :vartype capacity: ~azure.mgmt.apimanagement.models.ResourceSkuCapacity + """ + + _validation = { + 'resource_type': {'readonly': True}, + 'sku': {'readonly': True}, + 'capacity': {'readonly': True}, + } + + _attribute_map = { + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'ResourceSku'}, + 'capacity': {'key': 'capacity', 'type': 'ResourceSkuCapacity'}, + } + + def __init__(self, **kwargs) -> None: + super(ResourceSkuResult, self).__init__(**kwargs) + self.resource_type = None + self.sku = None + self.capacity = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract.py new file mode 100644 index 000000000000..511adab1f030 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResponseContract(Model): + """Operation response details. + + All required parameters must be populated in order to send to Azure. + + :param status_code: Required. Operation response HTTP status code. + :type status_code: int + :param description: Operation response description. + :type description: str + :param representations: Collection of operation response representations. + :type representations: + list[~azure.mgmt.apimanagement.models.RepresentationContract] + :param headers: Collection of operation response headers. + :type headers: list[~azure.mgmt.apimanagement.models.ParameterContract] + """ + + _validation = { + 'status_code': {'required': True}, + } + + _attribute_map = { + 'status_code': {'key': 'statusCode', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + 'representations': {'key': 'representations', 'type': '[RepresentationContract]'}, + 'headers': {'key': 'headers', 'type': '[ParameterContract]'}, + } + + def __init__(self, **kwargs): + super(ResponseContract, self).__init__(**kwargs) + self.status_code = kwargs.get('status_code', None) + self.description = kwargs.get('description', None) + self.representations = kwargs.get('representations', None) + self.headers = kwargs.get('headers', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract_py3.py new file mode 100644 index 000000000000..e2101f5e2c26 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/response_contract_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResponseContract(Model): + """Operation response details. + + All required parameters must be populated in order to send to Azure. + + :param status_code: Required. Operation response HTTP status code. + :type status_code: int + :param description: Operation response description. + :type description: str + :param representations: Collection of operation response representations. + :type representations: + list[~azure.mgmt.apimanagement.models.RepresentationContract] + :param headers: Collection of operation response headers. + :type headers: list[~azure.mgmt.apimanagement.models.ParameterContract] + """ + + _validation = { + 'status_code': {'required': True}, + } + + _attribute_map = { + 'status_code': {'key': 'statusCode', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + 'representations': {'key': 'representations', 'type': '[RepresentationContract]'}, + 'headers': {'key': 'headers', 'type': '[ParameterContract]'}, + } + + def __init__(self, *, status_code: int, description: str=None, representations=None, headers=None, **kwargs) -> None: + super(ResponseContract, self).__init__(**kwargs) + self.status_code = status_code + self.description = description + self.representations = representations + self.headers = headers diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings.py new file mode 100644 index 000000000000..c773f5b593b1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SamplingSettings(Model): + """Sampling settings for Diagnostic. + + :param sampling_type: Sampling type. Possible values include: 'fixed' + :type sampling_type: str or ~azure.mgmt.apimanagement.models.SamplingType + :param percentage: Rate of sampling for fixed-rate sampling. + :type percentage: float + """ + + _validation = { + 'percentage': {'maximum': 100, 'minimum': 0}, + } + + _attribute_map = { + 'sampling_type': {'key': 'samplingType', 'type': 'str'}, + 'percentage': {'key': 'percentage', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(SamplingSettings, self).__init__(**kwargs) + self.sampling_type = kwargs.get('sampling_type', None) + self.percentage = kwargs.get('percentage', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings_py3.py new file mode 100644 index 000000000000..544dbda52a7f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/sampling_settings_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SamplingSettings(Model): + """Sampling settings for Diagnostic. + + :param sampling_type: Sampling type. Possible values include: 'fixed' + :type sampling_type: str or ~azure.mgmt.apimanagement.models.SamplingType + :param percentage: Rate of sampling for fixed-rate sampling. + :type percentage: float + """ + + _validation = { + 'percentage': {'maximum': 100, 'minimum': 0}, + } + + _attribute_map = { + 'sampling_type': {'key': 'samplingType', 'type': 'str'}, + 'percentage': {'key': 'percentage', 'type': 'float'}, + } + + def __init__(self, *, sampling_type=None, percentage: float=None, **kwargs) -> None: + super(SamplingSettings, self).__init__(**kwargs) + self.sampling_type = sampling_type + self.percentage = percentage diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter.py new file mode 100644 index 000000000000..0350003491c4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SaveConfigurationParameter(Model): + """Save Tenant Configuration Contract details. + + All required parameters must be populated in order to send to Azure. + + :param branch: Required. The name of the Git branch in which to commit the + current configuration snapshot. + :type branch: str + :param force: The value if true, the current configuration database is + committed to the Git repository, even if the Git repository has newer + changes that would be overwritten. + :type force: bool + """ + + _validation = { + 'branch': {'required': True}, + } + + _attribute_map = { + 'branch': {'key': 'properties.branch', 'type': 'str'}, + 'force': {'key': 'properties.force', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SaveConfigurationParameter, self).__init__(**kwargs) + self.branch = kwargs.get('branch', None) + self.force = kwargs.get('force', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter_py3.py new file mode 100644 index 000000000000..fb5acd418212 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/save_configuration_parameter_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SaveConfigurationParameter(Model): + """Save Tenant Configuration Contract details. + + All required parameters must be populated in order to send to Azure. + + :param branch: Required. The name of the Git branch in which to commit the + current configuration snapshot. + :type branch: str + :param force: The value if true, the current configuration database is + committed to the Git repository, even if the Git repository has newer + changes that would be overwritten. + :type force: bool + """ + + _validation = { + 'branch': {'required': True}, + } + + _attribute_map = { + 'branch': {'key': 'properties.branch', 'type': 'str'}, + 'force': {'key': 'properties.force', 'type': 'bool'}, + } + + def __init__(self, *, branch: str, force: bool=None, **kwargs) -> None: + super(SaveConfigurationParameter, self).__init__(**kwargs) + self.branch = branch + self.force = force diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract.py new file mode 100644 index 000000000000..03ea8798496d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class SchemaContract(Resource): + """Schema Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param content_type: Required. Must be a valid a media type used in a + Content-Type header as defined in the RFC 2616. Media type of the schema + document (e.g. application/json, application/xml).
- `Swagger` + Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
+ - `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- + `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- + `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`. + :type content_type: str + :param document: Properties of the Schema Document. + :type document: object + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'content_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'content_type': {'key': 'properties.contentType', 'type': 'str'}, + 'document': {'key': 'properties.document', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(SchemaContract, self).__init__(**kwargs) + self.content_type = kwargs.get('content_type', None) + self.document = kwargs.get('document', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_paged.py new file mode 100644 index 000000000000..7c89d8c021ee --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class SchemaContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`SchemaContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SchemaContract]'} + } + + def __init__(self, *args, **kwargs): + + super(SchemaContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_py3.py new file mode 100644 index 000000000000..bde8934130e2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_contract_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class SchemaContract(Resource): + """Schema Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param content_type: Required. Must be a valid a media type used in a + Content-Type header as defined in the RFC 2616. Media type of the schema + document (e.g. application/json, application/xml).
- `Swagger` + Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
+ - `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- + `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- + `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`. + :type content_type: str + :param document: Properties of the Schema Document. + :type document: object + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'content_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'content_type': {'key': 'properties.contentType', 'type': 'str'}, + 'document': {'key': 'properties.document', 'type': 'object'}, + } + + def __init__(self, *, content_type: str, document=None, **kwargs) -> None: + super(SchemaContract, self).__init__(**kwargs) + self.content_type = content_type + self.document = document diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract.py new file mode 100644 index 000000000000..c22e78058a1e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class SchemaCreateOrUpdateContract(Resource): + """Schema Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param content_type: Required. Must be a valid a media type used in a + Content-Type header as defined in the RFC 2616. Media type of the schema + document (e.g. application/json, application/xml).
- `Swagger` + Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
+ - `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- + `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- + `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`. + :type content_type: str + :param value: Json escaped string defining the document representing the + Schema. + :type value: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'content_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'content_type': {'key': 'properties.contentType', 'type': 'str'}, + 'value': {'key': 'properties.document.value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SchemaCreateOrUpdateContract, self).__init__(**kwargs) + self.content_type = kwargs.get('content_type', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract_py3.py new file mode 100644 index 000000000000..75aa161af9b8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/schema_create_or_update_contract_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class SchemaCreateOrUpdateContract(Resource): + """Schema Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param content_type: Required. Must be a valid a media type used in a + Content-Type header as defined in the RFC 2616. Media type of the schema + document (e.g. application/json, application/xml).
- `Swagger` + Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
+ - `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- + `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- + `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`. + :type content_type: str + :param value: Json escaped string defining the document representing the + Schema. + :type value: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'content_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'content_type': {'key': 'properties.contentType', 'type': 'str'}, + 'value': {'key': 'properties.document.value', 'type': 'str'}, + } + + def __init__(self, *, content_type: str, value: str=None, **kwargs) -> None: + super(SchemaCreateOrUpdateContract, self).__init__(**kwargs) + self.content_type = content_type + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract.py new file mode 100644 index 000000000000..98d716699780 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract.py @@ -0,0 +1,131 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class SubscriptionContract(Resource): + """Subscription details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param owner_id: The user resource identifier of the subscription owner. + The value is a valid relative URL in the format of /users/{userId} where + {userId} is a user identifier. + :type owner_id: str + :param scope: Required. Scope like /products/{productId} or /apis or + /apis/{apiId}. + :type scope: str + :param display_name: The name of the subscription, or null if the + subscription has no name. + :type display_name: str + :param state: Required. Subscription state. Possible states are * active – + the subscription is active, * suspended – the subscription is blocked, and + the subscriber cannot call any APIs of the product, * submitted – the + subscription request has been made by the developer, but has not yet been + approved or rejected, * rejected – the subscription request has been + denied by an administrator, * cancelled – the subscription has been + cancelled by the developer or administrator, * expired – the subscription + reached its expiration date and was deactivated. Possible values include: + 'suspended', 'active', 'expired', 'submitted', 'rejected', 'cancelled' + :type state: str or ~azure.mgmt.apimanagement.models.SubscriptionState + :ivar created_date: Subscription creation date. The date conforms to the + following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :vartype created_date: datetime + :param start_date: Subscription activation date. The setting is for audit + purposes only and the subscription is not automatically activated. The + subscription lifecycle can be managed by using the `state` property. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type start_date: datetime + :param expiration_date: Subscription expiration date. The setting is for + audit purposes only and the subscription is not automatically expired. The + subscription lifecycle can be managed by using the `state` property. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type expiration_date: datetime + :param end_date: Date when subscription was cancelled or expired. The + setting is for audit purposes only and the subscription is not + automatically cancelled. The subscription lifecycle can be managed by + using the `state` property. The date conforms to the following format: + `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + :type end_date: datetime + :param notification_date: Upcoming subscription expiration notification + date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + specified by the ISO 8601 standard. + :type notification_date: datetime + :param primary_key: Required. Subscription primary key. + :type primary_key: str + :param secondary_key: Required. Subscription secondary key. + :type secondary_key: str + :param state_comment: Optional subscription comment added by an + administrator. + :type state_comment: str + :param allow_tracing: Determines whether tracing is enabled + :type allow_tracing: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'scope': {'required': True}, + 'display_name': {'max_length': 100, 'min_length': 0}, + 'state': {'required': True}, + 'created_date': {'readonly': True}, + 'primary_key': {'required': True, 'max_length': 256, 'min_length': 1}, + 'secondary_key': {'required': True, 'max_length': 256, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'owner_id': {'key': 'properties.ownerId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SubscriptionState'}, + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'start_date': {'key': 'properties.startDate', 'type': 'iso-8601'}, + 'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'}, + 'end_date': {'key': 'properties.endDate', 'type': 'iso-8601'}, + 'notification_date': {'key': 'properties.notificationDate', 'type': 'iso-8601'}, + 'primary_key': {'key': 'properties.primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'properties.secondaryKey', 'type': 'str'}, + 'state_comment': {'key': 'properties.stateComment', 'type': 'str'}, + 'allow_tracing': {'key': 'properties.allowTracing', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SubscriptionContract, self).__init__(**kwargs) + self.owner_id = kwargs.get('owner_id', None) + self.scope = kwargs.get('scope', None) + self.display_name = kwargs.get('display_name', None) + self.state = kwargs.get('state', None) + self.created_date = None + self.start_date = kwargs.get('start_date', None) + self.expiration_date = kwargs.get('expiration_date', None) + self.end_date = kwargs.get('end_date', None) + self.notification_date = kwargs.get('notification_date', None) + self.primary_key = kwargs.get('primary_key', None) + self.secondary_key = kwargs.get('secondary_key', None) + self.state_comment = kwargs.get('state_comment', None) + self.allow_tracing = kwargs.get('allow_tracing', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_paged.py new file mode 100644 index 000000000000..b781048674f1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class SubscriptionContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`SubscriptionContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SubscriptionContract]'} + } + + def __init__(self, *args, **kwargs): + + super(SubscriptionContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_py3.py new file mode 100644 index 000000000000..3735162a4c76 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_contract_py3.py @@ -0,0 +1,131 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class SubscriptionContract(Resource): + """Subscription details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param owner_id: The user resource identifier of the subscription owner. + The value is a valid relative URL in the format of /users/{userId} where + {userId} is a user identifier. + :type owner_id: str + :param scope: Required. Scope like /products/{productId} or /apis or + /apis/{apiId}. + :type scope: str + :param display_name: The name of the subscription, or null if the + subscription has no name. + :type display_name: str + :param state: Required. Subscription state. Possible states are * active – + the subscription is active, * suspended – the subscription is blocked, and + the subscriber cannot call any APIs of the product, * submitted – the + subscription request has been made by the developer, but has not yet been + approved or rejected, * rejected – the subscription request has been + denied by an administrator, * cancelled – the subscription has been + cancelled by the developer or administrator, * expired – the subscription + reached its expiration date and was deactivated. Possible values include: + 'suspended', 'active', 'expired', 'submitted', 'rejected', 'cancelled' + :type state: str or ~azure.mgmt.apimanagement.models.SubscriptionState + :ivar created_date: Subscription creation date. The date conforms to the + following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :vartype created_date: datetime + :param start_date: Subscription activation date. The setting is for audit + purposes only and the subscription is not automatically activated. The + subscription lifecycle can be managed by using the `state` property. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type start_date: datetime + :param expiration_date: Subscription expiration date. The setting is for + audit purposes only and the subscription is not automatically expired. The + subscription lifecycle can be managed by using the `state` property. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type expiration_date: datetime + :param end_date: Date when subscription was cancelled or expired. The + setting is for audit purposes only and the subscription is not + automatically cancelled. The subscription lifecycle can be managed by + using the `state` property. The date conforms to the following format: + `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + :type end_date: datetime + :param notification_date: Upcoming subscription expiration notification + date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as + specified by the ISO 8601 standard. + :type notification_date: datetime + :param primary_key: Required. Subscription primary key. + :type primary_key: str + :param secondary_key: Required. Subscription secondary key. + :type secondary_key: str + :param state_comment: Optional subscription comment added by an + administrator. + :type state_comment: str + :param allow_tracing: Determines whether tracing is enabled + :type allow_tracing: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'scope': {'required': True}, + 'display_name': {'max_length': 100, 'min_length': 0}, + 'state': {'required': True}, + 'created_date': {'readonly': True}, + 'primary_key': {'required': True, 'max_length': 256, 'min_length': 1}, + 'secondary_key': {'required': True, 'max_length': 256, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'owner_id': {'key': 'properties.ownerId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SubscriptionState'}, + 'created_date': {'key': 'properties.createdDate', 'type': 'iso-8601'}, + 'start_date': {'key': 'properties.startDate', 'type': 'iso-8601'}, + 'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'}, + 'end_date': {'key': 'properties.endDate', 'type': 'iso-8601'}, + 'notification_date': {'key': 'properties.notificationDate', 'type': 'iso-8601'}, + 'primary_key': {'key': 'properties.primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'properties.secondaryKey', 'type': 'str'}, + 'state_comment': {'key': 'properties.stateComment', 'type': 'str'}, + 'allow_tracing': {'key': 'properties.allowTracing', 'type': 'bool'}, + } + + def __init__(self, *, scope: str, state, primary_key: str, secondary_key: str, owner_id: str=None, display_name: str=None, start_date=None, expiration_date=None, end_date=None, notification_date=None, state_comment: str=None, allow_tracing: bool=None, **kwargs) -> None: + super(SubscriptionContract, self).__init__(**kwargs) + self.owner_id = owner_id + self.scope = scope + self.display_name = display_name + self.state = state + self.created_date = None + self.start_date = start_date + self.expiration_date = expiration_date + self.end_date = end_date + self.notification_date = notification_date + self.primary_key = primary_key + self.secondary_key = secondary_key + self.state_comment = state_comment + self.allow_tracing = allow_tracing diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters.py new file mode 100644 index 000000000000..9d5789c6a4a4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionCreateParameters(Model): + """Subscription create details. + + All required parameters must be populated in order to send to Azure. + + :param owner_id: User (user id path) for whom subscription is being + created in form /users/{userId} + :type owner_id: str + :param scope: Required. Scope like /products/{productId} or /apis or + /apis/{apiId}. + :type scope: str + :param display_name: Required. Subscription name. + :type display_name: str + :param primary_key: Primary subscription key. If not specified during + request key will be generated automatically. + :type primary_key: str + :param secondary_key: Secondary subscription key. If not specified during + request key will be generated automatically. + :type secondary_key: str + :param state: Initial subscription state. If no value is specified, + subscription is created with Submitted state. Possible states are * active + – the subscription is active, * suspended – the subscription is blocked, + and the subscriber cannot call any APIs of the product, * submitted – the + subscription request has been made by the developer, but has not yet been + approved or rejected, * rejected – the subscription request has been + denied by an administrator, * cancelled – the subscription has been + cancelled by the developer or administrator, * expired – the subscription + reached its expiration date and was deactivated. Possible values include: + 'suspended', 'active', 'expired', 'submitted', 'rejected', 'cancelled' + :type state: str or ~azure.mgmt.apimanagement.models.SubscriptionState + :param allow_tracing: Determines whether tracing can be enabled + :type allow_tracing: bool + """ + + _validation = { + 'scope': {'required': True}, + 'display_name': {'required': True, 'max_length': 100, 'min_length': 1}, + 'primary_key': {'max_length': 256, 'min_length': 1}, + 'secondary_key': {'max_length': 256, 'min_length': 1}, + } + + _attribute_map = { + 'owner_id': {'key': 'properties.ownerId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'primary_key': {'key': 'properties.primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'properties.secondaryKey', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SubscriptionState'}, + 'allow_tracing': {'key': 'properties.allowTracing', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SubscriptionCreateParameters, self).__init__(**kwargs) + self.owner_id = kwargs.get('owner_id', None) + self.scope = kwargs.get('scope', None) + self.display_name = kwargs.get('display_name', None) + self.primary_key = kwargs.get('primary_key', None) + self.secondary_key = kwargs.get('secondary_key', None) + self.state = kwargs.get('state', None) + self.allow_tracing = kwargs.get('allow_tracing', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters_py3.py new file mode 100644 index 000000000000..10eac288ec91 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_create_parameters_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionCreateParameters(Model): + """Subscription create details. + + All required parameters must be populated in order to send to Azure. + + :param owner_id: User (user id path) for whom subscription is being + created in form /users/{userId} + :type owner_id: str + :param scope: Required. Scope like /products/{productId} or /apis or + /apis/{apiId}. + :type scope: str + :param display_name: Required. Subscription name. + :type display_name: str + :param primary_key: Primary subscription key. If not specified during + request key will be generated automatically. + :type primary_key: str + :param secondary_key: Secondary subscription key. If not specified during + request key will be generated automatically. + :type secondary_key: str + :param state: Initial subscription state. If no value is specified, + subscription is created with Submitted state. Possible states are * active + – the subscription is active, * suspended – the subscription is blocked, + and the subscriber cannot call any APIs of the product, * submitted – the + subscription request has been made by the developer, but has not yet been + approved or rejected, * rejected – the subscription request has been + denied by an administrator, * cancelled – the subscription has been + cancelled by the developer or administrator, * expired – the subscription + reached its expiration date and was deactivated. Possible values include: + 'suspended', 'active', 'expired', 'submitted', 'rejected', 'cancelled' + :type state: str or ~azure.mgmt.apimanagement.models.SubscriptionState + :param allow_tracing: Determines whether tracing can be enabled + :type allow_tracing: bool + """ + + _validation = { + 'scope': {'required': True}, + 'display_name': {'required': True, 'max_length': 100, 'min_length': 1}, + 'primary_key': {'max_length': 256, 'min_length': 1}, + 'secondary_key': {'max_length': 256, 'min_length': 1}, + } + + _attribute_map = { + 'owner_id': {'key': 'properties.ownerId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'primary_key': {'key': 'properties.primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'properties.secondaryKey', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SubscriptionState'}, + 'allow_tracing': {'key': 'properties.allowTracing', 'type': 'bool'}, + } + + def __init__(self, *, scope: str, display_name: str, owner_id: str=None, primary_key: str=None, secondary_key: str=None, state=None, allow_tracing: bool=None, **kwargs) -> None: + super(SubscriptionCreateParameters, self).__init__(**kwargs) + self.owner_id = owner_id + self.scope = scope + self.display_name = display_name + self.primary_key = primary_key + self.secondary_key = secondary_key + self.state = state + self.allow_tracing = allow_tracing diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract.py new file mode 100644 index 000000000000..f211ba47878c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionKeyParameterNamesContract(Model): + """Subscription key parameter names details. + + :param header: Subscription key header name. + :type header: str + :param query: Subscription key query string parameter name. + :type query: str + """ + + _attribute_map = { + 'header': {'key': 'header', 'type': 'str'}, + 'query': {'key': 'query', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubscriptionKeyParameterNamesContract, self).__init__(**kwargs) + self.header = kwargs.get('header', None) + self.query = kwargs.get('query', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract_py3.py new file mode 100644 index 000000000000..b1163f189a3f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_key_parameter_names_contract_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionKeyParameterNamesContract(Model): + """Subscription key parameter names details. + + :param header: Subscription key header name. + :type header: str + :param query: Subscription key query string parameter name. + :type query: str + """ + + _attribute_map = { + 'header': {'key': 'header', 'type': 'str'}, + 'query': {'key': 'query', 'type': 'str'}, + } + + def __init__(self, *, header: str=None, query: str=None, **kwargs) -> None: + super(SubscriptionKeyParameterNamesContract, self).__init__(**kwargs) + self.header = header + self.query = query diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters.py new file mode 100644 index 000000000000..c17af927f3ad --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters.py @@ -0,0 +1,78 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionUpdateParameters(Model): + """Subscription update details. + + :param owner_id: User identifier path: /users/{userId} + :type owner_id: str + :param scope: Scope like /products/{productId} or /apis or /apis/{apiId} + :type scope: str + :param expiration_date: Subscription expiration date. The setting is for + audit purposes only and the subscription is not automatically expired. The + subscription lifecycle can be managed by using the `state` property. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type expiration_date: datetime + :param display_name: Subscription name. + :type display_name: str + :param primary_key: Primary subscription key. + :type primary_key: str + :param secondary_key: Secondary subscription key. + :type secondary_key: str + :param state: Subscription state. Possible states are * active – the + subscription is active, * suspended – the subscription is blocked, and the + subscriber cannot call any APIs of the product, * submitted – the + subscription request has been made by the developer, but has not yet been + approved or rejected, * rejected – the subscription request has been + denied by an administrator, * cancelled – the subscription has been + cancelled by the developer or administrator, * expired – the subscription + reached its expiration date and was deactivated. Possible values include: + 'suspended', 'active', 'expired', 'submitted', 'rejected', 'cancelled' + :type state: str or ~azure.mgmt.apimanagement.models.SubscriptionState + :param state_comment: Comments describing subscription state change by the + administrator. + :type state_comment: str + :param allow_tracing: Determines whether tracing can be enabled + :type allow_tracing: bool + """ + + _validation = { + 'primary_key': {'max_length': 256, 'min_length': 1}, + 'secondary_key': {'max_length': 256, 'min_length': 1}, + } + + _attribute_map = { + 'owner_id': {'key': 'properties.ownerId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'primary_key': {'key': 'properties.primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'properties.secondaryKey', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SubscriptionState'}, + 'state_comment': {'key': 'properties.stateComment', 'type': 'str'}, + 'allow_tracing': {'key': 'properties.allowTracing', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SubscriptionUpdateParameters, self).__init__(**kwargs) + self.owner_id = kwargs.get('owner_id', None) + self.scope = kwargs.get('scope', None) + self.expiration_date = kwargs.get('expiration_date', None) + self.display_name = kwargs.get('display_name', None) + self.primary_key = kwargs.get('primary_key', None) + self.secondary_key = kwargs.get('secondary_key', None) + self.state = kwargs.get('state', None) + self.state_comment = kwargs.get('state_comment', None) + self.allow_tracing = kwargs.get('allow_tracing', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters_py3.py new file mode 100644 index 000000000000..18e1dd2f5df8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscription_update_parameters_py3.py @@ -0,0 +1,78 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionUpdateParameters(Model): + """Subscription update details. + + :param owner_id: User identifier path: /users/{userId} + :type owner_id: str + :param scope: Scope like /products/{productId} or /apis or /apis/{apiId} + :type scope: str + :param expiration_date: Subscription expiration date. The setting is for + audit purposes only and the subscription is not automatically expired. The + subscription lifecycle can be managed by using the `state` property. The + date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified + by the ISO 8601 standard. + :type expiration_date: datetime + :param display_name: Subscription name. + :type display_name: str + :param primary_key: Primary subscription key. + :type primary_key: str + :param secondary_key: Secondary subscription key. + :type secondary_key: str + :param state: Subscription state. Possible states are * active – the + subscription is active, * suspended – the subscription is blocked, and the + subscriber cannot call any APIs of the product, * submitted – the + subscription request has been made by the developer, but has not yet been + approved or rejected, * rejected – the subscription request has been + denied by an administrator, * cancelled – the subscription has been + cancelled by the developer or administrator, * expired – the subscription + reached its expiration date and was deactivated. Possible values include: + 'suspended', 'active', 'expired', 'submitted', 'rejected', 'cancelled' + :type state: str or ~azure.mgmt.apimanagement.models.SubscriptionState + :param state_comment: Comments describing subscription state change by the + administrator. + :type state_comment: str + :param allow_tracing: Determines whether tracing can be enabled + :type allow_tracing: bool + """ + + _validation = { + 'primary_key': {'max_length': 256, 'min_length': 1}, + 'secondary_key': {'max_length': 256, 'min_length': 1}, + } + + _attribute_map = { + 'owner_id': {'key': 'properties.ownerId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + 'primary_key': {'key': 'properties.primaryKey', 'type': 'str'}, + 'secondary_key': {'key': 'properties.secondaryKey', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SubscriptionState'}, + 'state_comment': {'key': 'properties.stateComment', 'type': 'str'}, + 'allow_tracing': {'key': 'properties.allowTracing', 'type': 'bool'}, + } + + def __init__(self, *, owner_id: str=None, scope: str=None, expiration_date=None, display_name: str=None, primary_key: str=None, secondary_key: str=None, state=None, state_comment: str=None, allow_tracing: bool=None, **kwargs) -> None: + super(SubscriptionUpdateParameters, self).__init__(**kwargs) + self.owner_id = owner_id + self.scope = scope + self.expiration_date = expiration_date + self.display_name = display_name + self.primary_key = primary_key + self.secondary_key = secondary_key + self.state = state + self.state_comment = state_comment + self.allow_tracing = allow_tracing diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties.py new file mode 100644 index 000000000000..82beeab1135d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionsDelegationSettingsProperties(Model): + """Subscriptions delegation settings properties. + + :param enabled: Enable or disable delegation for subscriptions. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SubscriptionsDelegationSettingsProperties, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties_py3.py new file mode 100644 index 000000000000..61fab5253a59 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/subscriptions_delegation_settings_properties_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubscriptionsDelegationSettingsProperties(Model): + """Subscriptions delegation settings properties. + + :param enabled: Enable or disable delegation for subscriptions. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(SubscriptionsDelegationSettingsProperties, self).__init__(**kwargs) + self.enabled = enabled diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract.py new file mode 100644 index 000000000000..d0b129412cf1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class TagContract(Resource): + """Tag Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param display_name: Required. Tag name. + :type display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TagContract, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_paged.py new file mode 100644 index 000000000000..48974c2715cf --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class TagContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`TagContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[TagContract]'} + } + + def __init__(self, *args, **kwargs): + + super(TagContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_py3.py new file mode 100644 index 000000000000..175c0410c173 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_contract_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class TagContract(Resource): + """Tag Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param display_name: Required. Tag name. + :type display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'required': True, 'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, **kwargs) -> None: + super(TagContract, self).__init__(**kwargs) + self.display_name = display_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters.py new file mode 100644 index 000000000000..c133f3ffbf39 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagCreateUpdateParameters(Model): + """Parameters supplied to Create/Update Tag operations. + + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. Tag name. + :type display_name: str + """ + + _validation = { + 'display_name': {'required': True, 'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TagCreateUpdateParameters, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters_py3.py new file mode 100644 index 000000000000..e7a08d2fb302 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_create_update_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagCreateUpdateParameters(Model): + """Parameters supplied to Create/Update Tag operations. + + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. Tag name. + :type display_name: str + """ + + _validation = { + 'display_name': {'required': True, 'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, **kwargs) -> None: + super(TagCreateUpdateParameters, self).__init__(**kwargs) + self.display_name = display_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract.py new file mode 100644 index 000000000000..26e272617407 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class TagDescriptionContract(Resource): + """Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the Tag. + :type description: str + :param external_docs_url: Absolute URL of external resources describing + the tag. + :type external_docs_url: str + :param external_docs_description: Description of the external resources + describing the tag. + :type external_docs_description: str + :param display_name: Tag name. + :type display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'external_docs_url': {'max_length': 2000}, + 'display_name': {'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'external_docs_url': {'key': 'properties.externalDocsUrl', 'type': 'str'}, + 'external_docs_description': {'key': 'properties.externalDocsDescription', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TagDescriptionContract, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.external_docs_url = kwargs.get('external_docs_url', None) + self.external_docs_description = kwargs.get('external_docs_description', None) + self.display_name = kwargs.get('display_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_paged.py new file mode 100644 index 000000000000..3867d66bf905 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class TagDescriptionContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`TagDescriptionContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[TagDescriptionContract]'} + } + + def __init__(self, *args, **kwargs): + + super(TagDescriptionContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_py3.py new file mode 100644 index 000000000000..4ae8bda6437a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_contract_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class TagDescriptionContract(Resource): + """Contract details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param description: Description of the Tag. + :type description: str + :param external_docs_url: Absolute URL of external resources describing + the tag. + :type external_docs_url: str + :param external_docs_description: Description of the external resources + describing the tag. + :type external_docs_description: str + :param display_name: Tag name. + :type display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'external_docs_url': {'max_length': 2000}, + 'display_name': {'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'external_docs_url': {'key': 'properties.externalDocsUrl', 'type': 'str'}, + 'external_docs_description': {'key': 'properties.externalDocsDescription', 'type': 'str'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, external_docs_url: str=None, external_docs_description: str=None, display_name: str=None, **kwargs) -> None: + super(TagDescriptionContract, self).__init__(**kwargs) + self.description = description + self.external_docs_url = external_docs_url + self.external_docs_description = external_docs_description + self.display_name = display_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters.py new file mode 100644 index 000000000000..15842608702c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagDescriptionCreateParameters(Model): + """Parameters supplied to the Create TagDescription operation. + + :param description: Description of the Tag. + :type description: str + :param external_docs_url: Absolute URL of external resources describing + the tag. + :type external_docs_url: str + :param external_docs_description: Description of the external resources + describing the tag. + :type external_docs_description: str + """ + + _validation = { + 'external_docs_url': {'max_length': 2000}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'external_docs_url': {'key': 'properties.externalDocsUrl', 'type': 'str'}, + 'external_docs_description': {'key': 'properties.externalDocsDescription', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TagDescriptionCreateParameters, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.external_docs_url = kwargs.get('external_docs_url', None) + self.external_docs_description = kwargs.get('external_docs_description', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters_py3.py new file mode 100644 index 000000000000..dd5a8b4ad441 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_description_create_parameters_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagDescriptionCreateParameters(Model): + """Parameters supplied to the Create TagDescription operation. + + :param description: Description of the Tag. + :type description: str + :param external_docs_url: Absolute URL of external resources describing + the tag. + :type external_docs_url: str + :param external_docs_description: Description of the external resources + describing the tag. + :type external_docs_description: str + """ + + _validation = { + 'external_docs_url': {'max_length': 2000}, + } + + _attribute_map = { + 'description': {'key': 'properties.description', 'type': 'str'}, + 'external_docs_url': {'key': 'properties.externalDocsUrl', 'type': 'str'}, + 'external_docs_description': {'key': 'properties.externalDocsDescription', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, external_docs_url: str=None, external_docs_description: str=None, **kwargs) -> None: + super(TagDescriptionCreateParameters, self).__init__(**kwargs) + self.description = description + self.external_docs_url = external_docs_url + self.external_docs_description = external_docs_description diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract.py new file mode 100644 index 000000000000..594a0780d833 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagResourceContract(Model): + """TagResource contract properties. + + All required parameters must be populated in order to send to Azure. + + :param tag: Required. Tag associated with the resource. + :type tag: + ~azure.mgmt.apimanagement.models.TagTagResourceContractProperties + :param api: Api associated with the tag. + :type api: + ~azure.mgmt.apimanagement.models.ApiTagResourceContractProperties + :param operation: Operation associated with the tag. + :type operation: + ~azure.mgmt.apimanagement.models.OperationTagResourceContractProperties + :param product: Product associated with the tag. + :type product: + ~azure.mgmt.apimanagement.models.ProductTagResourceContractProperties + """ + + _validation = { + 'tag': {'required': True}, + } + + _attribute_map = { + 'tag': {'key': 'tag', 'type': 'TagTagResourceContractProperties'}, + 'api': {'key': 'api', 'type': 'ApiTagResourceContractProperties'}, + 'operation': {'key': 'operation', 'type': 'OperationTagResourceContractProperties'}, + 'product': {'key': 'product', 'type': 'ProductTagResourceContractProperties'}, + } + + def __init__(self, **kwargs): + super(TagResourceContract, self).__init__(**kwargs) + self.tag = kwargs.get('tag', None) + self.api = kwargs.get('api', None) + self.operation = kwargs.get('operation', None) + self.product = kwargs.get('product', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_paged.py new file mode 100644 index 000000000000..c64d82f24e7c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class TagResourceContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`TagResourceContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[TagResourceContract]'} + } + + def __init__(self, *args, **kwargs): + + super(TagResourceContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_py3.py new file mode 100644 index 000000000000..1377128c02d7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_resource_contract_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagResourceContract(Model): + """TagResource contract properties. + + All required parameters must be populated in order to send to Azure. + + :param tag: Required. Tag associated with the resource. + :type tag: + ~azure.mgmt.apimanagement.models.TagTagResourceContractProperties + :param api: Api associated with the tag. + :type api: + ~azure.mgmt.apimanagement.models.ApiTagResourceContractProperties + :param operation: Operation associated with the tag. + :type operation: + ~azure.mgmt.apimanagement.models.OperationTagResourceContractProperties + :param product: Product associated with the tag. + :type product: + ~azure.mgmt.apimanagement.models.ProductTagResourceContractProperties + """ + + _validation = { + 'tag': {'required': True}, + } + + _attribute_map = { + 'tag': {'key': 'tag', 'type': 'TagTagResourceContractProperties'}, + 'api': {'key': 'api', 'type': 'ApiTagResourceContractProperties'}, + 'operation': {'key': 'operation', 'type': 'OperationTagResourceContractProperties'}, + 'product': {'key': 'product', 'type': 'ProductTagResourceContractProperties'}, + } + + def __init__(self, *, tag, api=None, operation=None, product=None, **kwargs) -> None: + super(TagResourceContract, self).__init__(**kwargs) + self.tag = tag + self.api = api + self.operation = operation + self.product = product diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties.py new file mode 100644 index 000000000000..54330625ad6d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagTagResourceContractProperties(Model): + """Contract defining the Tag property in the Tag Resource Contract. + + :param id: Tag identifier + :type id: str + :param name: Tag Name + :type name: str + """ + + _validation = { + 'name': {'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TagTagResourceContractProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties_py3.py new file mode 100644 index 000000000000..48f937aa9e52 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tag_tag_resource_contract_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagTagResourceContractProperties(Model): + """Contract defining the Tag property in the Tag Resource Contract. + + :param id: Tag identifier + :type id: str + :param name: Tag Name + :type name: str + """ + + _validation = { + 'name': {'max_length': 160, 'min_length': 1}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, **kwargs) -> None: + super(TagTagResourceContractProperties, self).__init__(**kwargs) + self.id = id + self.name = name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract.py new file mode 100644 index 000000000000..8b5d7e2d4c46 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TenantConfigurationSyncStateContract(Model): + """Tenant Configuration Synchronization State. + + :param branch: The name of Git branch. + :type branch: str + :param commit_id: The latest commit Id. + :type commit_id: str + :param is_export: value indicating if last sync was save (true) or deploy + (false) operation. + :type is_export: bool + :param is_synced: value indicating if last synchronization was later than + the configuration change. + :type is_synced: bool + :param is_git_enabled: value indicating whether Git configuration access + is enabled. + :type is_git_enabled: bool + :param sync_date: The date of the latest synchronization. The date + conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by + the ISO 8601 standard. + :type sync_date: datetime + :param configuration_change_date: The date of the latest configuration + change. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` + as specified by the ISO 8601 standard. + :type configuration_change_date: datetime + """ + + _attribute_map = { + 'branch': {'key': 'branch', 'type': 'str'}, + 'commit_id': {'key': 'commitId', 'type': 'str'}, + 'is_export': {'key': 'isExport', 'type': 'bool'}, + 'is_synced': {'key': 'isSynced', 'type': 'bool'}, + 'is_git_enabled': {'key': 'isGitEnabled', 'type': 'bool'}, + 'sync_date': {'key': 'syncDate', 'type': 'iso-8601'}, + 'configuration_change_date': {'key': 'configurationChangeDate', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(TenantConfigurationSyncStateContract, self).__init__(**kwargs) + self.branch = kwargs.get('branch', None) + self.commit_id = kwargs.get('commit_id', None) + self.is_export = kwargs.get('is_export', None) + self.is_synced = kwargs.get('is_synced', None) + self.is_git_enabled = kwargs.get('is_git_enabled', None) + self.sync_date = kwargs.get('sync_date', None) + self.configuration_change_date = kwargs.get('configuration_change_date', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract_py3.py new file mode 100644 index 000000000000..7b9c9e8d2c40 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/tenant_configuration_sync_state_contract_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TenantConfigurationSyncStateContract(Model): + """Tenant Configuration Synchronization State. + + :param branch: The name of Git branch. + :type branch: str + :param commit_id: The latest commit Id. + :type commit_id: str + :param is_export: value indicating if last sync was save (true) or deploy + (false) operation. + :type is_export: bool + :param is_synced: value indicating if last synchronization was later than + the configuration change. + :type is_synced: bool + :param is_git_enabled: value indicating whether Git configuration access + is enabled. + :type is_git_enabled: bool + :param sync_date: The date of the latest synchronization. The date + conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by + the ISO 8601 standard. + :type sync_date: datetime + :param configuration_change_date: The date of the latest configuration + change. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` + as specified by the ISO 8601 standard. + :type configuration_change_date: datetime + """ + + _attribute_map = { + 'branch': {'key': 'branch', 'type': 'str'}, + 'commit_id': {'key': 'commitId', 'type': 'str'}, + 'is_export': {'key': 'isExport', 'type': 'bool'}, + 'is_synced': {'key': 'isSynced', 'type': 'bool'}, + 'is_git_enabled': {'key': 'isGitEnabled', 'type': 'bool'}, + 'sync_date': {'key': 'syncDate', 'type': 'iso-8601'}, + 'configuration_change_date': {'key': 'configurationChangeDate', 'type': 'iso-8601'}, + } + + def __init__(self, *, branch: str=None, commit_id: str=None, is_export: bool=None, is_synced: bool=None, is_git_enabled: bool=None, sync_date=None, configuration_change_date=None, **kwargs) -> None: + super(TenantConfigurationSyncStateContract, self).__init__(**kwargs) + self.branch = branch + self.commit_id = commit_id + self.is_export = is_export + self.is_synced = is_synced + self.is_git_enabled = is_git_enabled + self.sync_date = sync_date + self.configuration_change_date = configuration_change_date diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties.py new file mode 100644 index 000000000000..8967b154c12c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TermsOfServiceProperties(Model): + """Terms of service contract properties. + + :param text: A terms of service text. + :type text: str + :param enabled: Display terms of service during a sign-up process. + :type enabled: bool + :param consent_required: Ask user for consent to the terms of service. + :type consent_required: bool + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'consent_required': {'key': 'consentRequired', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(TermsOfServiceProperties, self).__init__(**kwargs) + self.text = kwargs.get('text', None) + self.enabled = kwargs.get('enabled', None) + self.consent_required = kwargs.get('consent_required', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties_py3.py new file mode 100644 index 000000000000..12ba02c648fa --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/terms_of_service_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TermsOfServiceProperties(Model): + """Terms of service contract properties. + + :param text: A terms of service text. + :type text: str + :param enabled: Display terms of service during a sign-up process. + :type enabled: bool + :param consent_required: Ask user for consent to the terms of service. + :type consent_required: bool + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'consent_required': {'key': 'consentRequired', 'type': 'bool'}, + } + + def __init__(self, *, text: str=None, enabled: bool=None, consent_required: bool=None, **kwargs) -> None: + super(TermsOfServiceProperties, self).__init__(**kwargs) + self.text = text + self.enabled = enabled + self.consent_required = consent_required diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract.py new file mode 100644 index 000000000000..605ff1d0d585 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TokenBodyParameterContract(Model): + """OAuth acquire token request body parameter (www-url-form-encoded). + + All required parameters must be populated in order to send to Azure. + + :param name: Required. body parameter name. + :type name: str + :param value: Required. body parameter value. + :type value: str + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TokenBodyParameterContract, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract_py3.py new file mode 100644 index 000000000000..737fc6853009 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/token_body_parameter_contract_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TokenBodyParameterContract(Model): + """OAuth acquire token request body parameter (www-url-form-encoded). + + All required parameters must be populated in order to send to Azure. + + :param name: Required. body parameter name. + :type name: str + :param value: Required. body parameter value. + :type value: str + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, name: str, value: str, **kwargs) -> None: + super(TokenBodyParameterContract, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract.py new file mode 100644 index 000000000000..b36d4717e4d4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class UserContract(Resource): + """User details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + :param first_name: First name. + :type first_name: str + :param last_name: Last name. + :type last_name: str + :param email: Email address. + :type email: str + :param registration_date: Date of user registration. The date conforms to + the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :type registration_date: datetime + :ivar groups: Collection of groups user is part of. + :vartype groups: + list[~azure.mgmt.apimanagement.models.GroupContractProperties] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'groups': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'note': {'key': 'properties.note', 'type': 'str'}, + 'identities': {'key': 'properties.identities', 'type': '[UserIdentityContract]'}, + 'first_name': {'key': 'properties.firstName', 'type': 'str'}, + 'last_name': {'key': 'properties.lastName', 'type': 'str'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'registration_date': {'key': 'properties.registrationDate', 'type': 'iso-8601'}, + 'groups': {'key': 'properties.groups', 'type': '[GroupContractProperties]'}, + } + + def __init__(self, **kwargs): + super(UserContract, self).__init__(**kwargs) + self.state = kwargs.get('state', "active") + self.note = kwargs.get('note', None) + self.identities = kwargs.get('identities', None) + self.first_name = kwargs.get('first_name', None) + self.last_name = kwargs.get('last_name', None) + self.email = kwargs.get('email', None) + self.registration_date = kwargs.get('registration_date', None) + self.groups = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_paged.py new file mode 100644 index 000000000000..a31093562e22 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class UserContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`UserContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[UserContract]'} + } + + def __init__(self, *args, **kwargs): + + super(UserContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_py3.py new file mode 100644 index 000000000000..3c2d23be38af --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_contract_py3.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class UserContract(Resource): + """User details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type for API Management resource. + :vartype type: str + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + :param first_name: First name. + :type first_name: str + :param last_name: Last name. + :type last_name: str + :param email: Email address. + :type email: str + :param registration_date: Date of user registration. The date conforms to + the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 + standard. + :type registration_date: datetime + :ivar groups: Collection of groups user is part of. + :vartype groups: + list[~azure.mgmt.apimanagement.models.GroupContractProperties] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'groups': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'note': {'key': 'properties.note', 'type': 'str'}, + 'identities': {'key': 'properties.identities', 'type': '[UserIdentityContract]'}, + 'first_name': {'key': 'properties.firstName', 'type': 'str'}, + 'last_name': {'key': 'properties.lastName', 'type': 'str'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'registration_date': {'key': 'properties.registrationDate', 'type': 'iso-8601'}, + 'groups': {'key': 'properties.groups', 'type': '[GroupContractProperties]'}, + } + + def __init__(self, *, state="active", note: str=None, identities=None, first_name: str=None, last_name: str=None, email: str=None, registration_date=None, **kwargs) -> None: + super(UserContract, self).__init__(**kwargs) + self.state = state + self.note = note + self.identities = identities + self.first_name = first_name + self.last_name = last_name + self.email = email + self.registration_date = registration_date + self.groups = None diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters.py new file mode 100644 index 000000000000..c2a08c3fd236 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserCreateParameters(Model): + """User create details. + + All required parameters must be populated in order to send to Azure. + + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + :param email: Required. Email address. Must not be empty and must be + unique within the service instance. + :type email: str + :param first_name: Required. First name. + :type first_name: str + :param last_name: Required. Last name. + :type last_name: str + :param password: User Password. If no value is provided, a default + password is generated. + :type password: str + :param confirmation: Determines the type of confirmation e-mail that will + be sent to the newly created user. Possible values include: 'signup', + 'invite' + :type confirmation: str or ~azure.mgmt.apimanagement.models.Confirmation + """ + + _validation = { + 'email': {'required': True, 'max_length': 254, 'min_length': 1}, + 'first_name': {'required': True, 'max_length': 100, 'min_length': 1}, + 'last_name': {'required': True, 'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'state': {'key': 'properties.state', 'type': 'str'}, + 'note': {'key': 'properties.note', 'type': 'str'}, + 'identities': {'key': 'properties.identities', 'type': '[UserIdentityContract]'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'first_name': {'key': 'properties.firstName', 'type': 'str'}, + 'last_name': {'key': 'properties.lastName', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'confirmation': {'key': 'properties.confirmation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserCreateParameters, self).__init__(**kwargs) + self.state = kwargs.get('state', "active") + self.note = kwargs.get('note', None) + self.identities = kwargs.get('identities', None) + self.email = kwargs.get('email', None) + self.first_name = kwargs.get('first_name', None) + self.last_name = kwargs.get('last_name', None) + self.password = kwargs.get('password', None) + self.confirmation = kwargs.get('confirmation', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters_py3.py new file mode 100644 index 000000000000..240440728fdb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_create_parameters_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserCreateParameters(Model): + """User create details. + + All required parameters must be populated in order to send to Azure. + + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + :param email: Required. Email address. Must not be empty and must be + unique within the service instance. + :type email: str + :param first_name: Required. First name. + :type first_name: str + :param last_name: Required. Last name. + :type last_name: str + :param password: User Password. If no value is provided, a default + password is generated. + :type password: str + :param confirmation: Determines the type of confirmation e-mail that will + be sent to the newly created user. Possible values include: 'signup', + 'invite' + :type confirmation: str or ~azure.mgmt.apimanagement.models.Confirmation + """ + + _validation = { + 'email': {'required': True, 'max_length': 254, 'min_length': 1}, + 'first_name': {'required': True, 'max_length': 100, 'min_length': 1}, + 'last_name': {'required': True, 'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'state': {'key': 'properties.state', 'type': 'str'}, + 'note': {'key': 'properties.note', 'type': 'str'}, + 'identities': {'key': 'properties.identities', 'type': '[UserIdentityContract]'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'first_name': {'key': 'properties.firstName', 'type': 'str'}, + 'last_name': {'key': 'properties.lastName', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'confirmation': {'key': 'properties.confirmation', 'type': 'str'}, + } + + def __init__(self, *, email: str, first_name: str, last_name: str, state="active", note: str=None, identities=None, password: str=None, confirmation=None, **kwargs) -> None: + super(UserCreateParameters, self).__init__(**kwargs) + self.state = state + self.note = note + self.identities = identities + self.email = email + self.first_name = first_name + self.last_name = last_name + self.password = password + self.confirmation = confirmation diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters.py new file mode 100644 index 000000000000..f190379aa298 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserEntityBaseParameters(Model): + """User Entity Base Parameters set. + + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + """ + + _attribute_map = { + 'state': {'key': 'state', 'type': 'str'}, + 'note': {'key': 'note', 'type': 'str'}, + 'identities': {'key': 'identities', 'type': '[UserIdentityContract]'}, + } + + def __init__(self, **kwargs): + super(UserEntityBaseParameters, self).__init__(**kwargs) + self.state = kwargs.get('state', "active") + self.note = kwargs.get('note', None) + self.identities = kwargs.get('identities', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters_py3.py new file mode 100644 index 000000000000..cd8a291e9a3a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_entity_base_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserEntityBaseParameters(Model): + """User Entity Base Parameters set. + + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + """ + + _attribute_map = { + 'state': {'key': 'state', 'type': 'str'}, + 'note': {'key': 'note', 'type': 'str'}, + 'identities': {'key': 'identities', 'type': '[UserIdentityContract]'}, + } + + def __init__(self, *, state="active", note: str=None, identities=None, **kwargs) -> None: + super(UserEntityBaseParameters, self).__init__(**kwargs) + self.state = state + self.note = note + self.identities = identities diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract.py new file mode 100644 index 000000000000..1e0bd1a8ac33 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserIdentityContract(Model): + """User identity details. + + :param provider: Identity provider name. + :type provider: str + :param id: Identifier value within provider. + :type id: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserIdentityContract, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_paged.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_paged.py new file mode 100644 index 000000000000..f1f4040a5e7b --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_paged.py @@ -0,0 +1,27 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class UserIdentityContractPaged(Paged): + """ + A paging container for iterating over a list of :class:`UserIdentityContract ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[UserIdentityContract]'} + } + + def __init__(self, *args, **kwargs): + + super(UserIdentityContractPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_py3.py new file mode 100644 index 000000000000..880bf2e0336a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_identity_contract_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserIdentityContract(Model): + """User identity details. + + :param provider: Identity provider name. + :type provider: str + :param id: Identifier value within provider. + :type id: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, provider: str=None, id: str=None, **kwargs) -> None: + super(UserIdentityContract, self).__init__(**kwargs) + self.provider = provider + self.id = id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters.py new file mode 100644 index 000000000000..e8092006538f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserTokenParameters(Model): + """Get User Token parameters. + + All required parameters must be populated in order to send to Azure. + + :param key_type: Required. The Key to be used to generate token for user. + Possible values include: 'primary', 'secondary'. Default value: "primary" + . + :type key_type: str or ~azure.mgmt.apimanagement.models.KeyType + :param expiry: Required. The Expiry time of the Token. Maximum token + expiry time is set to 30 days. The date conforms to the following format: + `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + :type expiry: datetime + """ + + _validation = { + 'key_type': {'required': True}, + 'expiry': {'required': True}, + } + + _attribute_map = { + 'key_type': {'key': 'properties.keyType', 'type': 'KeyType'}, + 'expiry': {'key': 'properties.expiry', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(UserTokenParameters, self).__init__(**kwargs) + self.key_type = kwargs.get('key_type', "primary") + self.expiry = kwargs.get('expiry', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters_py3.py new file mode 100644 index 000000000000..d0aecd5b2174 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_parameters_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserTokenParameters(Model): + """Get User Token parameters. + + All required parameters must be populated in order to send to Azure. + + :param key_type: Required. The Key to be used to generate token for user. + Possible values include: 'primary', 'secondary'. Default value: "primary" + . + :type key_type: str or ~azure.mgmt.apimanagement.models.KeyType + :param expiry: Required. The Expiry time of the Token. Maximum token + expiry time is set to 30 days. The date conforms to the following format: + `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + :type expiry: datetime + """ + + _validation = { + 'key_type': {'required': True}, + 'expiry': {'required': True}, + } + + _attribute_map = { + 'key_type': {'key': 'properties.keyType', 'type': 'KeyType'}, + 'expiry': {'key': 'properties.expiry', 'type': 'iso-8601'}, + } + + def __init__(self, *, expiry, key_type="primary", **kwargs) -> None: + super(UserTokenParameters, self).__init__(**kwargs) + self.key_type = key_type + self.expiry = expiry diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result.py new file mode 100644 index 000000000000..d124715b1855 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserTokenResult(Model): + """Get User Token response details. + + :param value: Shared Access Authorization token for the User. + :type value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserTokenResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result_py3.py new file mode 100644 index 000000000000..466feaef0a44 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_token_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserTokenResult(Model): + """Get User Token response details. + + :param value: Shared Access Authorization token for the User. + :type value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, value: str=None, **kwargs) -> None: + super(UserTokenResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters.py new file mode 100644 index 000000000000..2adc28870a0f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserUpdateParameters(Model): + """User update parameters. + + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + :param email: Email address. Must not be empty and must be unique within + the service instance. + :type email: str + :param password: User Password. + :type password: str + :param first_name: First name. + :type first_name: str + :param last_name: Last name. + :type last_name: str + """ + + _validation = { + 'email': {'max_length': 254, 'min_length': 1}, + 'first_name': {'max_length': 100, 'min_length': 1}, + 'last_name': {'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'state': {'key': 'properties.state', 'type': 'str'}, + 'note': {'key': 'properties.note', 'type': 'str'}, + 'identities': {'key': 'properties.identities', 'type': '[UserIdentityContract]'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'first_name': {'key': 'properties.firstName', 'type': 'str'}, + 'last_name': {'key': 'properties.lastName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserUpdateParameters, self).__init__(**kwargs) + self.state = kwargs.get('state', "active") + self.note = kwargs.get('note', None) + self.identities = kwargs.get('identities', None) + self.email = kwargs.get('email', None) + self.password = kwargs.get('password', None) + self.first_name = kwargs.get('first_name', None) + self.last_name = kwargs.get('last_name', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters_py3.py new file mode 100644 index 000000000000..8208852bdcb2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/user_update_parameters_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserUpdateParameters(Model): + """User update parameters. + + :param state: Account state. Specifies whether the user is active or not. + Blocked users are unable to sign into the developer portal or call any + APIs of subscribed products. Default state is Active. Possible values + include: 'active', 'blocked', 'pending', 'deleted'. Default value: + "active" . + :type state: str or ~azure.mgmt.apimanagement.models.UserState + :param note: Optional note about a user set by the administrator. + :type note: str + :param identities: Collection of user identities. + :type identities: + list[~azure.mgmt.apimanagement.models.UserIdentityContract] + :param email: Email address. Must not be empty and must be unique within + the service instance. + :type email: str + :param password: User Password. + :type password: str + :param first_name: First name. + :type first_name: str + :param last_name: Last name. + :type last_name: str + """ + + _validation = { + 'email': {'max_length': 254, 'min_length': 1}, + 'first_name': {'max_length': 100, 'min_length': 1}, + 'last_name': {'max_length': 100, 'min_length': 1}, + } + + _attribute_map = { + 'state': {'key': 'properties.state', 'type': 'str'}, + 'note': {'key': 'properties.note', 'type': 'str'}, + 'identities': {'key': 'properties.identities', 'type': '[UserIdentityContract]'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'first_name': {'key': 'properties.firstName', 'type': 'str'}, + 'last_name': {'key': 'properties.lastName', 'type': 'str'}, + } + + def __init__(self, *, state="active", note: str=None, identities=None, email: str=None, password: str=None, first_name: str=None, last_name: str=None, **kwargs) -> None: + super(UserUpdateParameters, self).__init__(**kwargs) + self.state = state + self.note = note + self.identities = identities + self.email = email + self.password = password + self.first_name = first_name + self.last_name = last_name diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration.py new file mode 100644 index 000000000000..2bc74d949399 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkConfiguration(Model): + """Configuration of a virtual network to which API Management service is + deployed. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vnetid: The virtual network ID. This is typically a GUID. Expect a + null GUID by default. + :vartype vnetid: str + :ivar subnetname: The name of the subnet. + :vartype subnetname: str + :param subnet_resource_id: The full resource ID of a subnet in a virtual + network to deploy the API Management service in. + :type subnet_resource_id: str + """ + + _validation = { + 'vnetid': {'readonly': True}, + 'subnetname': {'readonly': True}, + 'subnet_resource_id': {'pattern': r'^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$'}, + } + + _attribute_map = { + 'vnetid': {'key': 'vnetid', 'type': 'str'}, + 'subnetname': {'key': 'subnetname', 'type': 'str'}, + 'subnet_resource_id': {'key': 'subnetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkConfiguration, self).__init__(**kwargs) + self.vnetid = None + self.subnetname = None + self.subnet_resource_id = kwargs.get('subnet_resource_id', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration_py3.py new file mode 100644 index 000000000000..1cfd6c15d5a9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/virtual_network_configuration_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkConfiguration(Model): + """Configuration of a virtual network to which API Management service is + deployed. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vnetid: The virtual network ID. This is typically a GUID. Expect a + null GUID by default. + :vartype vnetid: str + :ivar subnetname: The name of the subnet. + :vartype subnetname: str + :param subnet_resource_id: The full resource ID of a subnet in a virtual + network to deploy the API Management service in. + :type subnet_resource_id: str + """ + + _validation = { + 'vnetid': {'readonly': True}, + 'subnetname': {'readonly': True}, + 'subnet_resource_id': {'pattern': r'^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$'}, + } + + _attribute_map = { + 'vnetid': {'key': 'vnetid', 'type': 'str'}, + 'subnetname': {'key': 'subnetname', 'type': 'str'}, + 'subnet_resource_id': {'key': 'subnetResourceId', 'type': 'str'}, + } + + def __init__(self, *, subnet_resource_id: str=None, **kwargs) -> None: + super(VirtualNetworkConfiguration, self).__init__(**kwargs) + self.vnetid = None + self.subnetname = None + self.subnet_resource_id = subnet_resource_id diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name.py new file mode 100644 index 000000000000..625c689ce7d2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class X509CertificateName(Model): + """Properties of server X509Names. + + :param name: Common Name of the Certificate. + :type name: str + :param issuer_certificate_thumbprint: Thumbprint for the Issuer of the + Certificate. + :type issuer_certificate_thumbprint: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'issuer_certificate_thumbprint': {'key': 'issuerCertificateThumbprint', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(X509CertificateName, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.issuer_certificate_thumbprint = kwargs.get('issuer_certificate_thumbprint', None) diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name_py3.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name_py3.py new file mode 100644 index 000000000000..6a0e571d3296 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/models/x509_certificate_name_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class X509CertificateName(Model): + """Properties of server X509Names. + + :param name: Common Name of the Certificate. + :type name: str + :param issuer_certificate_thumbprint: Thumbprint for the Issuer of the + Certificate. + :type issuer_certificate_thumbprint: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'issuer_certificate_thumbprint': {'key': 'issuerCertificateThumbprint', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, issuer_certificate_thumbprint: str=None, **kwargs) -> None: + super(X509CertificateName, self).__init__(**kwargs) + self.name = name + self.issuer_certificate_thumbprint = issuer_certificate_thumbprint diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/__init__.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/__init__.py new file mode 100644 index 000000000000..1e1aeda77f92 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/__init__.py @@ -0,0 +1,136 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .api_operations import ApiOperations +from .api_revision_operations import ApiRevisionOperations +from .api_release_operations import ApiReleaseOperations +from .api_operation_operations import ApiOperationOperations +from .api_operation_policy_operations import ApiOperationPolicyOperations +from .tag_operations import TagOperations +from .api_product_operations import ApiProductOperations +from .api_policy_operations import ApiPolicyOperations +from .api_schema_operations import ApiSchemaOperations +from .api_diagnostic_operations import ApiDiagnosticOperations +from .api_issue_operations import ApiIssueOperations +from .api_issue_comment_operations import ApiIssueCommentOperations +from .api_issue_attachment_operations import ApiIssueAttachmentOperations +from .api_tag_description_operations import ApiTagDescriptionOperations +from .operation_operations import OperationOperations +from .api_version_set_operations import ApiVersionSetOperations +from .authorization_server_operations import AuthorizationServerOperations +from .backend_operations import BackendOperations +from .cache_operations import CacheOperations +from .certificate_operations import CertificateOperations +from .api_management_operations import ApiManagementOperations +from .api_management_service_skus_operations import ApiManagementServiceSkusOperations +from .api_management_service_operations import ApiManagementServiceOperations +from .diagnostic_operations import DiagnosticOperations +from .email_template_operations import EmailTemplateOperations +from .group_operations import GroupOperations +from .group_user_operations import GroupUserOperations +from .identity_provider_operations import IdentityProviderOperations +from .issue_operations import IssueOperations +from .logger_operations import LoggerOperations +from .network_status_operations import NetworkStatusOperations +from .notification_operations import NotificationOperations +from .notification_recipient_user_operations import NotificationRecipientUserOperations +from .notification_recipient_email_operations import NotificationRecipientEmailOperations +from .open_id_connect_provider_operations import OpenIdConnectProviderOperations +from .policy_operations import PolicyOperations +from .policy_snippet_operations import PolicySnippetOperations +from .sign_in_settings_operations import SignInSettingsOperations +from .sign_up_settings_operations import SignUpSettingsOperations +from .delegation_settings_operations import DelegationSettingsOperations +from .product_operations import ProductOperations +from .product_api_operations import ProductApiOperations +from .product_group_operations import ProductGroupOperations +from .product_subscriptions_operations import ProductSubscriptionsOperations +from .product_policy_operations import ProductPolicyOperations +from .property_operations import PropertyOperations +from .quota_by_counter_keys_operations import QuotaByCounterKeysOperations +from .quota_by_period_keys_operations import QuotaByPeriodKeysOperations +from .region_operations import RegionOperations +from .reports_operations import ReportsOperations +from .subscription_operations import SubscriptionOperations +from .tag_resource_operations import TagResourceOperations +from .tenant_access_operations import TenantAccessOperations +from .tenant_access_git_operations import TenantAccessGitOperations +from .tenant_configuration_operations import TenantConfigurationOperations +from .user_operations import UserOperations +from .user_group_operations import UserGroupOperations +from .user_subscription_operations import UserSubscriptionOperations +from .user_identities_operations import UserIdentitiesOperations +from .user_confirmation_password_operations import UserConfirmationPasswordOperations +from .api_export_operations import ApiExportOperations + +__all__ = [ + 'ApiOperations', + 'ApiRevisionOperations', + 'ApiReleaseOperations', + 'ApiOperationOperations', + 'ApiOperationPolicyOperations', + 'TagOperations', + 'ApiProductOperations', + 'ApiPolicyOperations', + 'ApiSchemaOperations', + 'ApiDiagnosticOperations', + 'ApiIssueOperations', + 'ApiIssueCommentOperations', + 'ApiIssueAttachmentOperations', + 'ApiTagDescriptionOperations', + 'OperationOperations', + 'ApiVersionSetOperations', + 'AuthorizationServerOperations', + 'BackendOperations', + 'CacheOperations', + 'CertificateOperations', + 'ApiManagementOperations', + 'ApiManagementServiceSkusOperations', + 'ApiManagementServiceOperations', + 'DiagnosticOperations', + 'EmailTemplateOperations', + 'GroupOperations', + 'GroupUserOperations', + 'IdentityProviderOperations', + 'IssueOperations', + 'LoggerOperations', + 'NetworkStatusOperations', + 'NotificationOperations', + 'NotificationRecipientUserOperations', + 'NotificationRecipientEmailOperations', + 'OpenIdConnectProviderOperations', + 'PolicyOperations', + 'PolicySnippetOperations', + 'SignInSettingsOperations', + 'SignUpSettingsOperations', + 'DelegationSettingsOperations', + 'ProductOperations', + 'ProductApiOperations', + 'ProductGroupOperations', + 'ProductSubscriptionsOperations', + 'ProductPolicyOperations', + 'PropertyOperations', + 'QuotaByCounterKeysOperations', + 'QuotaByPeriodKeysOperations', + 'RegionOperations', + 'ReportsOperations', + 'SubscriptionOperations', + 'TagResourceOperations', + 'TenantAccessOperations', + 'TenantAccessGitOperations', + 'TenantConfigurationOperations', + 'UserOperations', + 'UserGroupOperations', + 'UserSubscriptionOperations', + 'UserIdentitiesOperations', + 'UserConfirmationPasswordOperations', + 'ApiExportOperations', +] diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_diagnostic_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_diagnostic_operations.py new file mode 100644 index 000000000000..b00a8d13b667 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_diagnostic_operations.py @@ -0,0 +1,492 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiDiagnosticOperations(object): + """ApiDiagnosticOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all diagnostics of an API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DiagnosticContract + :rtype: + ~azure.mgmt.apimanagement.models.DiagnosticContractPaged[~azure.mgmt.apimanagement.models.DiagnosticContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DiagnosticContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DiagnosticContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, diagnostic_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the Diagnostic for an API + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}'} + + def get( + self, resource_group_name, service_name, api_id, diagnostic_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the Diagnostic for an API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DiagnosticContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.DiagnosticContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('DiagnosticContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, diagnostic_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a new Diagnostic for an API or updates an existing one. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.DiagnosticContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DiagnosticContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.DiagnosticContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DiagnosticContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('DiagnosticContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('DiagnosticContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}'} + + def update( + self, resource_group_name, service_name, api_id, diagnostic_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the Diagnostic for an API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param parameters: Diagnostic Update parameters. + :type parameters: ~azure.mgmt.apimanagement.models.DiagnosticContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DiagnosticContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}'} + + def delete( + self, resource_group_name, service_name, api_id, diagnostic_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified Diagnostic from an API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_export_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_export_operations.py new file mode 100644 index 000000000000..18aa4a080a00 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_export_operations.py @@ -0,0 +1,112 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiExportOperations(object): + """ApiExportOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar export: Query parameter required to export the API details. Constant value: "true". + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.export = "true" + self.api_version = "2019-01-01" + + self.config = config + + def get( + self, resource_group_name, service_name, api_id, format, custom_headers=None, raw=False, **operation_config): + """Gets the details of the API specified by its identifier in the format + specified to the Storage Blob with SAS Key valid for 5 minutes. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param format: Format in which to export the Api Details to the + Storage Blob with Sas Key valid for 5 minutes. Possible values + include: 'Swagger', 'Wsdl', 'Wadl', 'Openapi' + :type format: str or ~azure.mgmt.apimanagement.models.ExportFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiExportResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiExportResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['format'] = self._serialize.query("format", format, 'str') + query_parameters['export'] = self._serialize.query("self.export", self.export, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiExportResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_attachment_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_attachment_operations.py new file mode 100644 index 000000000000..859143e02e2f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_attachment_operations.py @@ -0,0 +1,443 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiIssueAttachmentOperations(object): + """ApiIssueAttachmentOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, issue_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all attachments for the Issue associated with the specified API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IssueAttachmentContract + :rtype: + ~azure.mgmt.apimanagement.models.IssueAttachmentContractPaged[~azure.mgmt.apimanagement.models.IssueAttachmentContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.IssueAttachmentContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.IssueAttachmentContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, issue_id, attachment_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the issue Attachment for an API + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param attachment_id: Attachment identifier within an Issue. Must be + unique in the current Issue. + :type attachment_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'attachmentId': self._serialize.url("attachment_id", attachment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}'} + + def get( + self, resource_group_name, service_name, api_id, issue_id, attachment_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the issue Attachment for an API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param attachment_id: Attachment identifier within an Issue. Must be + unique in the current Issue. + :type attachment_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueAttachmentContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueAttachmentContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'attachmentId': self._serialize.url("attachment_id", attachment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueAttachmentContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, issue_id, attachment_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a new Attachment for the Issue in an API or updates an existing + one. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param attachment_id: Attachment identifier within an Issue. Must be + unique in the current Issue. + :type attachment_id: str + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.IssueAttachmentContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueAttachmentContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueAttachmentContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'attachmentId': self._serialize.url("attachment_id", attachment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IssueAttachmentContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueAttachmentContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('IssueAttachmentContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}'} + + def delete( + self, resource_group_name, service_name, api_id, issue_id, attachment_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified comment from an Issue. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param attachment_id: Attachment identifier within an Issue. Must be + unique in the current Issue. + :type attachment_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'attachmentId': self._serialize.url("attachment_id", attachment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_comment_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_comment_operations.py new file mode 100644 index 000000000000..d6598520f1dc --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_comment_operations.py @@ -0,0 +1,443 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiIssueCommentOperations(object): + """ApiIssueCommentOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, issue_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all comments for the Issue associated with the specified API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IssueCommentContract + :rtype: + ~azure.mgmt.apimanagement.models.IssueCommentContractPaged[~azure.mgmt.apimanagement.models.IssueCommentContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.IssueCommentContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.IssueCommentContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, issue_id, comment_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the issue Comment for an API + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param comment_id: Comment identifier within an Issue. Must be unique + in the current Issue. + :type comment_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'commentId': self._serialize.url("comment_id", comment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}'} + + def get( + self, resource_group_name, service_name, api_id, issue_id, comment_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the issue Comment for an API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param comment_id: Comment identifier within an Issue. Must be unique + in the current Issue. + :type comment_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueCommentContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueCommentContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'commentId': self._serialize.url("comment_id", comment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueCommentContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, issue_id, comment_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a new Comment for the Issue in an API or updates an existing + one. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param comment_id: Comment identifier within an Issue. Must be unique + in the current Issue. + :type comment_id: str + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.IssueCommentContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueCommentContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueCommentContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'commentId': self._serialize.url("comment_id", comment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IssueCommentContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueCommentContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('IssueCommentContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}'} + + def delete( + self, resource_group_name, service_name, api_id, issue_id, comment_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified comment from an Issue. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param comment_id: Comment identifier within an Issue. Must be unique + in the current Issue. + :type comment_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'commentId': self._serialize.url("comment_id", comment_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_operations.py new file mode 100644 index 000000000000..c513d93b2c20 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_issue_operations.py @@ -0,0 +1,500 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiIssueOperations(object): + """ApiIssueOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, filter=None, expand_comments_attachments=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all issues associated with the specified API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| state | filter + | eq | |
+ :type filter: str + :param expand_comments_attachments: Expand the comment attachments. + :type expand_comments_attachments: bool + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IssueContract + :rtype: + ~azure.mgmt.apimanagement.models.IssueContractPaged[~azure.mgmt.apimanagement.models.IssueContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if expand_comments_attachments is not None: + query_parameters['expandCommentsAttachments'] = self._serialize.query("expand_comments_attachments", expand_comments_attachments, 'bool') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.IssueContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.IssueContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, issue_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the Issue for an API specified + by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}'} + + def get( + self, resource_group_name, service_name, api_id, issue_id, expand_comments_attachments=None, custom_headers=None, raw=False, **operation_config): + """Gets the details of the Issue for an API specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param expand_comments_attachments: Expand the comment attachments. + :type expand_comments_attachments: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expand_comments_attachments is not None: + query_parameters['expandCommentsAttachments'] = self._serialize.query("expand_comments_attachments", expand_comments_attachments, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, issue_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a new Issue for an API or updates an existing one. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.IssueContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IssueContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('IssueContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}'} + + def update( + self, resource_group_name, service_name, api_id, issue_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates an existing issue for an API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param parameters: Update parameters. + :type parameters: ~azure.mgmt.apimanagement.models.IssueUpdateContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IssueUpdateContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}'} + + def delete( + self, resource_group_name, service_name, api_id, issue_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified Issue from an API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_operations.py new file mode 100644 index 000000000000..a6e74dd10cce --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_operations.py @@ -0,0 +1,99 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ApiManagementOperations(object): + """ApiManagementOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available REST API operations of the + Microsoft.ApiManagement provider. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.apimanagement.models.OperationPaged[~azure.mgmt.apimanagement.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.ApiManagement/operations'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_operations.py new file mode 100644 index 000000000000..5f7313e5fdf4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_operations.py @@ -0,0 +1,989 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApiManagementServiceOperations(object): + """ApiManagementServiceOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + + def _restore_initial( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.restore.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiManagementServiceBackupRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def restore( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores a backup of an API Management service created using the + ApiManagementService_Backup operation on the current service. This is a + long running operation and could take several minutes to complete. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param parameters: Parameters supplied to the Restore API Management + service from backup operation. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiManagementServiceBackupRestoreParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApiManagementServiceResource or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiManagementServiceResource]] + :raises: :class:`CloudError` + """ + raw_result = self._restore_initial( + resource_group_name=resource_group_name, + service_name=service_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/restore'} + + + def _backup_initial( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.backup.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiManagementServiceBackupRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def backup( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a backup of the API Management service to the given Azure + Storage Account. This is long running operation and could take several + minutes to complete. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param parameters: Parameters supplied to the + ApiManagementService_Backup operation. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiManagementServiceBackupRestoreParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApiManagementServiceResource or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiManagementServiceResource]] + :raises: :class:`CloudError` + """ + raw_result = self._backup_initial( + resource_group_name=resource_group_name, + service_name=service_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + backup.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backup'} + + + def _create_or_update_initial( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiManagementServiceResource') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceResource', response) + if response.status_code == 201: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an API Management service. This is long running + operation and could take several minutes to complete. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param parameters: Parameters supplied to the CreateOrUpdate API + Management service operation. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiManagementServiceResource + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApiManagementServiceResource or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiManagementServiceResource]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_name=service_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}'} + + + def _update_initial( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiManagementServiceUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an existing API Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param parameters: Parameters supplied to the CreateOrUpdate API + Management service operation. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiManagementServiceUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApiManagementServiceResource or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiManagementServiceResource]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + service_name=service_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}'} + + def get( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets an API Management service resource description. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiManagementServiceResource or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiManagementServiceResource + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}'} + + + def _delete_initial( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 202: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def delete( + self, resource_group_name, service_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes an existing API Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApiManagementServiceResource or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiManagementServiceResource]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_name=service_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """List all API Management services within a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiManagementServiceResource + :rtype: + ~azure.mgmt.apimanagement.models.ApiManagementServiceResourcePaged[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApiManagementServiceResourcePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiManagementServiceResourcePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all API Management services within an Azure subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiManagementServiceResource + :rtype: + ~azure.mgmt.apimanagement.models.ApiManagementServiceResourcePaged[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApiManagementServiceResourcePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiManagementServiceResourcePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/service'} + + def get_sso_token( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the Single-Sign-On token for the API Management Service which is + valid for 5 Minutes. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiManagementServiceGetSsoTokenResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.apimanagement.models.ApiManagementServiceGetSsoTokenResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_sso_token.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceGetSsoTokenResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_sso_token.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/getssotoken'} + + def check_name_availability( + self, name, custom_headers=None, raw=False, **operation_config): + """Checks availability and correctness of a name for an API Management + service. + + :param name: The name to check for availability. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiManagementServiceNameAvailabilityResult or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.apimanagement.models.ApiManagementServiceNameAvailabilityResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.ApiManagementServiceCheckNameAvailabilityParameters(name=name) + + # Construct URL + url = self.check_name_availability.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiManagementServiceCheckNameAvailabilityParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceNameAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/checkNameAvailability'} + + + def _apply_network_configuration_updates_initial( + self, resource_group_name, service_name, location=None, custom_headers=None, raw=False, **operation_config): + parameters = None + if location is not None: + parameters = models.ApiManagementServiceApplyNetworkConfigurationParameters(location=location) + + # Construct URL + url = self.apply_network_configuration_updates.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if parameters is not None: + body_content = self._serialize.body(parameters, 'ApiManagementServiceApplyNetworkConfigurationParameters') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def apply_network_configuration_updates( + self, resource_group_name, service_name, location=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates the Microsoft.ApiManagement resource running in the Virtual + network to pick the updated network settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param location: Location of the Api Management service to update for + a multi-region service. For a service deployed in a single region, + this parameter is not required. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApiManagementServiceResource or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiManagementServiceResource]] + :raises: :class:`CloudError` + """ + raw_result = self._apply_network_configuration_updates_initial( + resource_group_name=resource_group_name, + service_name=service_name, + location=location, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApiManagementServiceResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + apply_network_configuration_updates.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/applynetworkconfigurationupdates'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_skus_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_skus_operations.py new file mode 100644 index 000000000000..876da69e682e --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_management_service_skus_operations.py @@ -0,0 +1,110 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ApiManagementServiceSkusOperations(object): + """ApiManagementServiceSkusOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_available_service_skus( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets available SKUs for API Management service. + + Gets all available SKU for a given API Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceSkuResult + :rtype: + ~azure.mgmt.apimanagement.models.ResourceSkuResultPaged[~azure.mgmt.apimanagement.models.ResourceSkuResult] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_available_service_skus.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ResourceSkuResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ResourceSkuResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_available_service_skus.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/skus'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_operations.py new file mode 100644 index 000000000000..596f3528bf20 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_operations.py @@ -0,0 +1,508 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiOperationOperations(object): + """ApiOperationOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_api( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of the operations for the specified API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| method | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| description | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| urlTemplate | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param tags: Include tags in the response. + :type tags: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of OperationContract + :rtype: + ~azure.mgmt.apimanagement.models.OperationContractPaged[~azure.mgmt.apimanagement.models.OperationContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if tags is not None: + query_parameters['tags'] = self._serialize.query("tags", tags, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.OperationContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, operation_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the API operation specified by + its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}'} + + def get( + self, resource_group_name, service_name, api_id, operation_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the API Operation specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.OperationContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('OperationContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, operation_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a new operation in the API or updates an existing one. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.OperationContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.OperationContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'OperationContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('OperationContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('OperationContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}'} + + def update( + self, resource_group_name, service_name, api_id, operation_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the operation in the API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param parameters: API Operation Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.OperationUpdateContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'OperationUpdateContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}'} + + def delete( + self, resource_group_name, service_name, api_id, operation_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified operation in the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_policy_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_policy_operations.py new file mode 100644 index 000000000000..57f3b7bbecc1 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operation_policy_operations.py @@ -0,0 +1,422 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiOperationPolicyOperations(object): + """ApiOperationPolicyOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar policy_id: The identifier of the Policy. Constant value: "policy". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.policy_id = "policy" + + self.config = config + + def list_by_operation( + self, resource_group_name, service_name, api_id, operation_id, custom_headers=None, raw=False, **operation_config): + """Get the list of policy configuration at the API Operation level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PolicyCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, operation_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the API operation policy + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}'} + + def get( + self, resource_group_name, service_name, api_id, operation_id, format="xml", custom_headers=None, raw=False, **operation_config): + """Get the policy configuration at the API Operation level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param format: Policy Export Format. Possible values include: 'xml', + 'rawxml' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyExportFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if format is not None: + query_parameters['format'] = self._serialize.query("format", format, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, operation_id, value, if_match=None, format="xml", custom_headers=None, raw=False, **operation_config): + """Creates or updates policy configuration for the API Operation level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param value: Contents of the Policy as defined by the format. + :type value: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param format: Format of the policyContent. Possible values include: + 'xml', 'xml-link', 'rawxml', 'rawxml-link' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyContentFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PolicyContract(value=value, format=format) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PolicyContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}'} + + def delete( + self, resource_group_name, service_name, api_id, operation_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the policy configuration at the Api Operation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operations.py new file mode 100644 index 000000000000..9828b2d15211 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_operations.py @@ -0,0 +1,632 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApiOperations(object): + """ApiOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, tags=None, expand_api_version_set=None, custom_headers=None, raw=False, **operation_config): + """Lists all APIs of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + description | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| path | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param tags: Include tags in the response. + :type tags: str + :param expand_api_version_set: Include full ApiVersionSet resource in + response + :type expand_api_version_set: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiContract + :rtype: + ~azure.mgmt.apimanagement.models.ApiContractPaged[~azure.mgmt.apimanagement.models.ApiContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if tags is not None: + query_parameters['tags'] = self._serialize.query("tags", tags, 'str') + if expand_api_version_set is not None: + query_parameters['expandApiVersionSet'] = self._serialize.query("expand_api_version_set", expand_api_version_set, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApiContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}'} + + def get( + self, resource_group_name, service_name, api_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the API specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ApiContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}'} + + + def _create_or_update_initial( + self, resource_group_name, service_name, api_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiCreateOrUpdateParameter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ApiContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('ApiContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_name, api_id, parameters, if_match=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates new or updates existing specified API of the API Management + service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param parameters: Create or update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiCreateOrUpdateParameter + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ApiContract or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.ApiContract] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.ApiContract]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_name=service_name, + api_id=api_id, + parameters=parameters, + if_match=if_match, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + header_dict = { + 'ETag': 'str', + } + deserialized = self._deserialize('ApiContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}'} + + def update( + self, resource_group_name, service_name, api_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the specified API of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param parameters: API Update Contract parameters. + :type parameters: ~azure.mgmt.apimanagement.models.ApiUpdateContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiUpdateContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}'} + + def delete( + self, resource_group_name, service_name, api_id, if_match, delete_revisions=None, custom_headers=None, raw=False, **operation_config): + """Deletes the specified API of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param delete_revisions: Delete all revisions of the Api. + :type delete_revisions: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if delete_revisions is not None: + query_parameters['deleteRevisions'] = self._serialize.query("delete_revisions", delete_revisions, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}'} + + def list_by_tags( + self, resource_group_name, service_name, filter=None, top=None, skip=None, include_not_tagged_apis=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of apis associated with tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Supported operators | Supported + functions | + |-------------|------------------------|-----------------------------------| + |name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith| + |displayName | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith| + |apiRevision | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith| + |path | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith| + |description | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith| + |serviceUrl | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith| + |isCurrent | eq | | + :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param include_not_tagged_apis: Include not tagged APIs. + :type include_not_tagged_apis: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagResourceContract + :rtype: + ~azure.mgmt.apimanagement.models.TagResourceContractPaged[~azure.mgmt.apimanagement.models.TagResourceContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if include_not_tagged_apis is not None: + query_parameters['includeNotTaggedApis'] = self._serialize.query("include_not_tagged_apis", include_not_tagged_apis, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apisByTags'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_policy_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_policy_operations.py new file mode 100644 index 000000000000..8618fda61700 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_policy_operations.py @@ -0,0 +1,402 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiPolicyOperations(object): + """ApiPolicyOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar policy_id: The identifier of the Policy. Constant value: "policy". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.policy_id = "policy" + + self.config = config + + def list_by_api( + self, resource_group_name, service_name, api_id, custom_headers=None, raw=False, **operation_config): + """Get the policy configuration at the API level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PolicyCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the API policy specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}'} + + def get( + self, resource_group_name, service_name, api_id, format="xml", custom_headers=None, raw=False, **operation_config): + """Get the policy configuration at the API level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param format: Policy Export Format. Possible values include: 'xml', + 'rawxml' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyExportFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if format is not None: + query_parameters['format'] = self._serialize.query("format", format, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, value, if_match=None, format="xml", custom_headers=None, raw=False, **operation_config): + """Creates or updates policy configuration for the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param value: Contents of the Policy as defined by the format. + :type value: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param format: Format of the policyContent. Possible values include: + 'xml', 'xml-link', 'rawxml', 'rawxml-link' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyContentFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PolicyContract(value=value, format=format) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PolicyContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}'} + + def delete( + self, resource_group_name, service_name, api_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the policy configuration at the Api. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_product_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_product_operations.py new file mode 100644 index 000000000000..27542a5e3b4a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_product_operations.py @@ -0,0 +1,126 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiProductOperations(object): + """ApiProductOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_apis( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all Products, which the API is part of. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ProductContract + :rtype: + ~azure.mgmt.apimanagement.models.ProductContractPaged[~azure.mgmt.apimanagement.models.ProductContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_apis.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ProductContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ProductContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_apis.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/products'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_release_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_release_operations.py new file mode 100644 index 000000000000..c00e71b80676 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_release_operations.py @@ -0,0 +1,501 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiReleaseOperations(object): + """ApiReleaseOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all releases of an API. An API release is created when making an + API Revision current. Releases are also used to rollback to previous + revisions. Results will be paged and can be constrained by the $top and + $skip parameters. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + notes | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiReleaseContract + :rtype: + ~azure.mgmt.apimanagement.models.ApiReleaseContractPaged[~azure.mgmt.apimanagement.models.ApiReleaseContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApiReleaseContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiReleaseContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, release_id, custom_headers=None, raw=False, **operation_config): + """Returns the etag of an API release. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param release_id: Release identifier within an API. Must be unique in + the current API Management service instance. + :type release_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'releaseId': self._serialize.url("release_id", release_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}'} + + def get( + self, resource_group_name, service_name, api_id, release_id, custom_headers=None, raw=False, **operation_config): + """Returns the details of an API release. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param release_id: Release identifier within an API. Must be unique in + the current API Management service instance. + :type release_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiReleaseContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiReleaseContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'releaseId': self._serialize.url("release_id", release_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ApiReleaseContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, release_id, if_match=None, api_id1=None, notes=None, custom_headers=None, raw=False, **operation_config): + """Creates a new Release for the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param release_id: Release identifier within an API. Must be unique in + the current API Management service instance. + :type release_id: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param api_id1: Identifier of the API the release belongs to. + :type api_id1: str + :param notes: Release Notes + :type notes: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiReleaseContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiReleaseContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.ApiReleaseContract(api_id=api_id1, notes=notes) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'releaseId': self._serialize.url("release_id", release_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiReleaseContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ApiReleaseContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('ApiReleaseContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}'} + + def update( + self, resource_group_name, service_name, api_id, release_id, if_match, api_id1=None, notes=None, custom_headers=None, raw=False, **operation_config): + """Updates the details of the release of the API specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param release_id: Release identifier within an API. Must be unique in + the current API Management service instance. + :type release_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param api_id1: Identifier of the API the release belongs to. + :type api_id1: str + :param notes: Release Notes + :type notes: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.ApiReleaseContract(api_id=api_id1, notes=notes) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'releaseId': self._serialize.url("release_id", release_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiReleaseContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}'} + + def delete( + self, resource_group_name, service_name, api_id, release_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified release in the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param release_id: Release identifier within an API. Must be unique in + the current API Management service instance. + :type release_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'releaseId': self._serialize.url("release_id", release_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_revision_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_revision_operations.py new file mode 100644 index 000000000000..fc654cfe9f18 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_revision_operations.py @@ -0,0 +1,126 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiRevisionOperations(object): + """ApiRevisionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all revisions of an API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API identifier. Must be unique in the current API + Management service instance. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiRevisionContract + :rtype: + ~azure.mgmt.apimanagement.models.ApiRevisionContractPaged[~azure.mgmt.apimanagement.models.ApiRevisionContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApiRevisionContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiRevisionContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/revisions'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_schema_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_schema_operations.py new file mode 100644 index 000000000000..6d9dc76a4f8c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_schema_operations.py @@ -0,0 +1,442 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiSchemaOperations(object): + """ApiSchemaOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_api( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Get the schema configuration at the API level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + contentType | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SchemaContract + :rtype: + ~azure.mgmt.apimanagement.models.SchemaContractPaged[~azure.mgmt.apimanagement.models.SchemaContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SchemaContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SchemaContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, schema_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the schema specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param schema_id: Schema identifier within an API. Must be unique in + the current API Management service instance. + :type schema_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'schemaId': self._serialize.url("schema_id", schema_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}'} + + def get( + self, resource_group_name, service_name, api_id, schema_id, custom_headers=None, raw=False, **operation_config): + """Get the schema configuration at the API level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param schema_id: Schema identifier within an API. Must be unique in + the current API Management service instance. + :type schema_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SchemaContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.SchemaContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'schemaId': self._serialize.url("schema_id", schema_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('SchemaContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, schema_id, content_type, if_match=None, value=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates schema configuration for the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param schema_id: Schema identifier within an API. Must be unique in + the current API Management service instance. + :type schema_id: str + :param content_type: Must be a valid a media type used in a + Content-Type header as defined in the RFC 2616. Media type of the + schema document (e.g. application/json, application/xml).
- + `Swagger` Schema use + `application/vnd.ms-azure-apim.swagger.definitions+json`
- + `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- + `OpenApi` Schema use `application/vnd.oai.openapi.components+json` +
- `WADL Schema` use + `application/vnd.ms-azure-apim.wadl.grammars+xml`. + :type content_type: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param value: Json escaped string defining the document representing + the Schema. + :type value: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SchemaContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.SchemaContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.SchemaCreateOrUpdateContract(content_type=content_type, value=value) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'schemaId': self._serialize.url("schema_id", schema_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SchemaCreateOrUpdateContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('SchemaContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('SchemaContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}'} + + def delete( + self, resource_group_name, service_name, api_id, schema_id, if_match, force=None, custom_headers=None, raw=False, **operation_config): + """Deletes the schema configuration at the Api. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param schema_id: Schema identifier within an API. Must be unique in + the current API Management service instance. + :type schema_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param force: If true removes all references to the schema before + deleting it. + :type force: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'schemaId': self._serialize.url("schema_id", schema_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if force is not None: + query_parameters['force'] = self._serialize.query("force", force, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_tag_description_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_tag_description_operations.py new file mode 100644 index 000000000000..9c2324b24d6f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_tag_description_operations.py @@ -0,0 +1,427 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiTagDescriptionOperations(object): + """ApiTagDescriptionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all Tags descriptions in scope of API. Model similar to swagger - + tagDescription is defined on API level but tag may be assigned to the + Operations. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagDescriptionContract + :rtype: + ~azure.mgmt.apimanagement.models.TagDescriptionContractPaged[~azure.mgmt.apimanagement.models.TagDescriptionContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagDescriptionContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagDescriptionContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions'} + + def get_entity_tag( + self, resource_group_name, service_name, api_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state version of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagId}'} + + def get( + self, resource_group_name, service_name, api_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Get Tag description in scope of API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagDescriptionContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagDescriptionContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagDescriptionContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagId}'} + + def create_or_update( + self, resource_group_name, service_name, api_id, tag_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Create/Update tag description in scope of the Api. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.TagDescriptionCreateParameters + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagDescriptionContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagDescriptionContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagDescriptionCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagDescriptionContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('TagDescriptionContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagId}'} + + def delete( + self, resource_group_name, service_name, api_id, tag_id, if_match, custom_headers=None, raw=False, **operation_config): + """Delete tag description for the Api. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_version_set_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_version_set_operations.py new file mode 100644 index 000000000000..72173a8b483f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/api_version_set_operations.py @@ -0,0 +1,467 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ApiVersionSetOperations(object): + """ApiVersionSetOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of API Version Sets in the specified service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiVersionSetContract + :rtype: + ~azure.mgmt.apimanagement.models.ApiVersionSetContractPaged[~azure.mgmt.apimanagement.models.ApiVersionSetContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApiVersionSetContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiVersionSetContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets'} + + def get_entity_tag( + self, resource_group_name, service_name, version_set_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the Api Version Set specified + by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param version_set_id: Api Version Set identifier. Must be unique in + the current API Management service instance. + :type version_set_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'versionSetId': self._serialize.url("version_set_id", version_set_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}'} + + def get( + self, resource_group_name, service_name, version_set_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the Api Version Set specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param version_set_id: Api Version Set identifier. Must be unique in + the current API Management service instance. + :type version_set_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiVersionSetContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiVersionSetContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'versionSetId': self._serialize.url("version_set_id", version_set_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ApiVersionSetContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}'} + + def create_or_update( + self, resource_group_name, service_name, version_set_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates a Api Version Set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param version_set_id: Api Version Set identifier. Must be unique in + the current API Management service instance. + :type version_set_id: str + :param parameters: Create or update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiVersionSetContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiVersionSetContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiVersionSetContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'versionSetId': self._serialize.url("version_set_id", version_set_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiVersionSetContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ApiVersionSetContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('ApiVersionSetContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}'} + + def update( + self, resource_group_name, service_name, version_set_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the Api VersionSet specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param version_set_id: Api Version Set identifier. Must be unique in + the current API Management service instance. + :type version_set_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.ApiVersionSetUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'versionSetId': self._serialize.url("version_set_id", version_set_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApiVersionSetUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}'} + + def delete( + self, resource_group_name, service_name, version_set_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific Api Version Set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param version_set_id: Api Version Set identifier. Must be unique in + the current API Management service instance. + :type version_set_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'versionSetId': self._serialize.url("version_set_id", version_set_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/authorization_server_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/authorization_server_operations.py new file mode 100644 index 000000000000..7473c7856313 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/authorization_server_operations.py @@ -0,0 +1,468 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class AuthorizationServerOperations(object): + """AuthorizationServerOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of authorization servers defined within a service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AuthorizationServerContract + :rtype: + ~azure.mgmt.apimanagement.models.AuthorizationServerContractPaged[~azure.mgmt.apimanagement.models.AuthorizationServerContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.AuthorizationServerContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AuthorizationServerContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers'} + + def get_entity_tag( + self, resource_group_name, service_name, authsid, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the authorizationServer + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param authsid: Identifier of the authorization server. + :type authsid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'authsid': self._serialize.url("authsid", authsid, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}'} + + def get( + self, resource_group_name, service_name, authsid, custom_headers=None, raw=False, **operation_config): + """Gets the details of the authorization server specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param authsid: Identifier of the authorization server. + :type authsid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AuthorizationServerContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.AuthorizationServerContract + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'authsid': self._serialize.url("authsid", authsid, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('AuthorizationServerContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}'} + + def create_or_update( + self, resource_group_name, service_name, authsid, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates new authorization server or updates an existing authorization + server. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param authsid: Identifier of the authorization server. + :type authsid: str + :param parameters: Create or update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.AuthorizationServerContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AuthorizationServerContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.AuthorizationServerContract + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'authsid': self._serialize.url("authsid", authsid, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AuthorizationServerContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('AuthorizationServerContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('AuthorizationServerContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}'} + + def update( + self, resource_group_name, service_name, authsid, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the authorization server specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param authsid: Identifier of the authorization server. + :type authsid: str + :param parameters: OAuth2 Server settings Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.AuthorizationServerUpdateContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'authsid': self._serialize.url("authsid", authsid, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AuthorizationServerUpdateContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}'} + + def delete( + self, resource_group_name, service_name, authsid, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific authorization server instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param authsid: Identifier of the authorization server. + :type authsid: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'authsid': self._serialize.url("authsid", authsid, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/backend_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/backend_operations.py new file mode 100644 index 000000000000..5afb9bbb081a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/backend_operations.py @@ -0,0 +1,542 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class BackendOperations(object): + """BackendOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of backends in the specified service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| url | filter | + ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | +
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BackendContract + :rtype: + ~azure.mgmt.apimanagement.models.BackendContractPaged[~azure.mgmt.apimanagement.models.BackendContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.BackendContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BackendContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends'} + + def get_entity_tag( + self, resource_group_name, service_name, backend_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the backend specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param backend_id: Identifier of the Backend entity. Must be unique in + the current API Management service instance. + :type backend_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'backendId': self._serialize.url("backend_id", backend_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}'} + + def get( + self, resource_group_name, service_name, backend_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the backend specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param backend_id: Identifier of the Backend entity. Must be unique in + the current API Management service instance. + :type backend_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackendContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.BackendContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'backendId': self._serialize.url("backend_id", backend_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('BackendContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}'} + + def create_or_update( + self, resource_group_name, service_name, backend_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates a backend. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param backend_id: Identifier of the Backend entity. Must be unique in + the current API Management service instance. + :type backend_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.BackendContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackendContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.BackendContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'backendId': self._serialize.url("backend_id", backend_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'BackendContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('BackendContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('BackendContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}'} + + def update( + self, resource_group_name, service_name, backend_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates an existing backend. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param backend_id: Identifier of the Backend entity. Must be unique in + the current API Management service instance. + :type backend_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.BackendUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'backendId': self._serialize.url("backend_id", backend_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'BackendUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}'} + + def delete( + self, resource_group_name, service_name, backend_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified backend. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param backend_id: Identifier of the Backend entity. Must be unique in + the current API Management service instance. + :type backend_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'backendId': self._serialize.url("backend_id", backend_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}'} + + def reconnect( + self, resource_group_name, service_name, backend_id, after=None, custom_headers=None, raw=False, **operation_config): + """Notifies the APIM proxy to create a new connection to the backend after + the specified timeout. If no timeout was specified, timeout of 2 + minutes is used. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param backend_id: Identifier of the Backend entity. Must be unique in + the current API Management service instance. + :type backend_id: str + :param after: Duration in ISO8601 format after which reconnect will be + initiated. Minimum duration of the Reconnect is PT2M. + :type after: timedelta + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = None + if after is not None: + parameters = models.BackendReconnectContract(after=after) + + # Construct URL + url = self.reconnect.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'backendId': self._serialize.url("backend_id", backend_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if parameters is not None: + body_content = self._serialize.body(parameters, 'BackendReconnectContract') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + reconnect.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}/reconnect'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/cache_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/cache_operations.py new file mode 100644 index 000000000000..165b93f2c6f3 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/cache_operations.py @@ -0,0 +1,461 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class CacheOperations(object): + """CacheOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of all external Caches in the specified service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CacheContract + :rtype: + ~azure.mgmt.apimanagement.models.CacheContractPaged[~azure.mgmt.apimanagement.models.CacheContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CacheContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CacheContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches'} + + def get_entity_tag( + self, resource_group_name, service_name, cache_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the Cache specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param cache_id: Identifier of the Cache entity. Cache identifier + (should be either 'default' or valid Azure region identifier). + :type cache_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'cacheId': self._serialize.url("cache_id", cache_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}'} + + def get( + self, resource_group_name, service_name, cache_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the Cache specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param cache_id: Identifier of the Cache entity. Cache identifier + (should be either 'default' or valid Azure region identifier). + :type cache_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CacheContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.CacheContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'cacheId': self._serialize.url("cache_id", cache_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('CacheContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}'} + + def create_or_update( + self, resource_group_name, service_name, cache_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates an External Cache to be used in Api Management + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param cache_id: Identifier of the Cache entity. Cache identifier + (should be either 'default' or valid Azure region identifier). + :type cache_id: str + :param parameters: Create or Update parameters. + :type parameters: ~azure.mgmt.apimanagement.models.CacheContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CacheContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.CacheContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'cacheId': self._serialize.url("cache_id", cache_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CacheContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('CacheContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('CacheContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}'} + + def update( + self, resource_group_name, service_name, cache_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the cache specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param cache_id: Identifier of the Cache entity. Cache identifier + (should be either 'default' or valid Azure region identifier). + :type cache_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.CacheUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'cacheId': self._serialize.url("cache_id", cache_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CacheUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}'} + + def delete( + self, resource_group_name, service_name, cache_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific Cache. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param cache_id: Identifier of the Cache entity. Cache identifier + (should be either 'default' or valid Azure region identifier). + :type cache_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'cacheId': self._serialize.url("cache_id", cache_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/certificate_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/certificate_operations.py new file mode 100644 index 000000000000..12276ecf2d2c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/certificate_operations.py @@ -0,0 +1,410 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class CertificateOperations(object): + """CertificateOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of all certificates in the specified service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| subject | filter | ge, le, eq, ne, gt, + lt | substringof, contains, startswith, endswith |
| thumbprint | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| expirationDate | filter | ge, le, eq, ne, gt, lt | + |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateContract + :rtype: + ~azure.mgmt.apimanagement.models.CertificateContractPaged[~azure.mgmt.apimanagement.models.CertificateContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates'} + + def get_entity_tag( + self, resource_group_name, service_name, certificate_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the certificate specified by + its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param certificate_id: Identifier of the certificate entity. Must be + unique in the current API Management service instance. + :type certificate_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'certificateId': self._serialize.url("certificate_id", certificate_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}'} + + def get( + self, resource_group_name, service_name, certificate_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the certificate specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param certificate_id: Identifier of the certificate entity. Must be + unique in the current API Management service instance. + :type certificate_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.CertificateContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'certificateId': self._serialize.url("certificate_id", certificate_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('CertificateContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}'} + + def create_or_update( + self, resource_group_name, service_name, certificate_id, data, password, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates the certificate being used for authentication with + the backend. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param certificate_id: Identifier of the certificate entity. Must be + unique in the current API Management service instance. + :type certificate_id: str + :param data: Base 64 encoded certificate using the + application/x-pkcs12 representation. + :type data: str + :param password: Password for the Certificate + :type password: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.CertificateContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.CertificateCreateOrUpdateParameters(data=data, password=password) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'certificateId': self._serialize.url("certificate_id", certificate_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateCreateOrUpdateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('CertificateContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('CertificateContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}'} + + def delete( + self, resource_group_name, service_name, certificate_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific certificate. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param certificate_id: Identifier of the certificate entity. Must be + unique in the current API Management service instance. + :type certificate_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'certificateId': self._serialize.url("certificate_id", certificate_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/delegation_settings_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/delegation_settings_operations.py new file mode 100644 index 000000000000..d3671260fe47 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/delegation_settings_operations.py @@ -0,0 +1,295 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class DelegationSettingsOperations(object): + """DelegationSettingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def get_entity_tag( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the DelegationSettings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation'} + + def get( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Get Delegation Settings for the Portal. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PortalDelegationSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PortalDelegationSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PortalDelegationSettings', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation'} + + def update( + self, resource_group_name, service_name, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Update Delegation settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param parameters: Update Delegation settings. + :type parameters: + ~azure.mgmt.apimanagement.models.PortalDelegationSettings + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PortalDelegationSettings') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation'} + + def create_or_update( + self, resource_group_name, service_name, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Create or Update Delegation settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param parameters: Create or update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.PortalDelegationSettings + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PortalDelegationSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PortalDelegationSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PortalDelegationSettings') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PortalDelegationSettings', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/diagnostic_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/diagnostic_operations.py new file mode 100644 index 000000000000..8aeb6d1d3ed8 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/diagnostic_operations.py @@ -0,0 +1,466 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class DiagnosticOperations(object): + """DiagnosticOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all diagnostics of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DiagnosticContract + :rtype: + ~azure.mgmt.apimanagement.models.DiagnosticContractPaged[~azure.mgmt.apimanagement.models.DiagnosticContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DiagnosticContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DiagnosticContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics'} + + def get_entity_tag( + self, resource_group_name, service_name, diagnostic_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the Diagnostic specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}'} + + def get( + self, resource_group_name, service_name, diagnostic_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the Diagnostic specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DiagnosticContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.DiagnosticContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('DiagnosticContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}'} + + def create_or_update( + self, resource_group_name, service_name, diagnostic_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a new Diagnostic or updates an existing one. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.DiagnosticContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DiagnosticContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.DiagnosticContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DiagnosticContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('DiagnosticContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('DiagnosticContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}'} + + def update( + self, resource_group_name, service_name, diagnostic_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the Diagnostic specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param parameters: Diagnostic Update parameters. + :type parameters: ~azure.mgmt.apimanagement.models.DiagnosticContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DiagnosticContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}'} + + def delete( + self, resource_group_name, service_name, diagnostic_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified Diagnostic. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param diagnostic_id: Diagnostic identifier. Must be unique in the + current API Management service instance. + :type diagnostic_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'diagnosticId': self._serialize.url("diagnostic_id", diagnostic_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/email_template_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/email_template_operations.py new file mode 100644 index 000000000000..65badc17e0bb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/email_template_operations.py @@ -0,0 +1,516 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class EmailTemplateOperations(object): + """EmailTemplateOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of properties defined within a service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of EmailTemplateContract + :rtype: + ~azure.mgmt.apimanagement.models.EmailTemplateContractPaged[~azure.mgmt.apimanagement.models.EmailTemplateContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.EmailTemplateContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.EmailTemplateContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates'} + + def get_entity_tag( + self, resource_group_name, service_name, template_name, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the email template specified by + its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param template_name: Email Template Name Identifier. Possible values + include: 'applicationApprovedNotificationMessage', + 'accountClosedDeveloper', + 'quotaLimitApproachingDeveloperNotificationMessage', + 'newDeveloperNotificationMessage', 'emailChangeIdentityDefault', + 'inviteUserNotificationMessage', 'newCommentNotificationMessage', + 'confirmSignUpIdentityDefault', 'newIssueNotificationMessage', + 'purchaseDeveloperNotificationMessage', + 'passwordResetIdentityDefault', + 'passwordResetByAdminNotificationMessage', + 'rejectDeveloperNotificationMessage', + 'requestDeveloperNotificationMessage' + :type template_name: str or + ~azure.mgmt.apimanagement.models.TemplateName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'templateName': self._serialize.url("template_name", template_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}'} + + def get( + self, resource_group_name, service_name, template_name, custom_headers=None, raw=False, **operation_config): + """Gets the details of the email template specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param template_name: Email Template Name Identifier. Possible values + include: 'applicationApprovedNotificationMessage', + 'accountClosedDeveloper', + 'quotaLimitApproachingDeveloperNotificationMessage', + 'newDeveloperNotificationMessage', 'emailChangeIdentityDefault', + 'inviteUserNotificationMessage', 'newCommentNotificationMessage', + 'confirmSignUpIdentityDefault', 'newIssueNotificationMessage', + 'purchaseDeveloperNotificationMessage', + 'passwordResetIdentityDefault', + 'passwordResetByAdminNotificationMessage', + 'rejectDeveloperNotificationMessage', + 'requestDeveloperNotificationMessage' + :type template_name: str or + ~azure.mgmt.apimanagement.models.TemplateName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EmailTemplateContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.EmailTemplateContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'templateName': self._serialize.url("template_name", template_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('EmailTemplateContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}'} + + def create_or_update( + self, resource_group_name, service_name, template_name, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Updates an Email Template. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param template_name: Email Template Name Identifier. Possible values + include: 'applicationApprovedNotificationMessage', + 'accountClosedDeveloper', + 'quotaLimitApproachingDeveloperNotificationMessage', + 'newDeveloperNotificationMessage', 'emailChangeIdentityDefault', + 'inviteUserNotificationMessage', 'newCommentNotificationMessage', + 'confirmSignUpIdentityDefault', 'newIssueNotificationMessage', + 'purchaseDeveloperNotificationMessage', + 'passwordResetIdentityDefault', + 'passwordResetByAdminNotificationMessage', + 'rejectDeveloperNotificationMessage', + 'requestDeveloperNotificationMessage' + :type template_name: str or + ~azure.mgmt.apimanagement.models.TemplateName + :param parameters: Email Template update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.EmailTemplateUpdateParameters + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EmailTemplateContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.EmailTemplateContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'templateName': self._serialize.url("template_name", template_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'EmailTemplateUpdateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EmailTemplateContract', response) + if response.status_code == 201: + deserialized = self._deserialize('EmailTemplateContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}'} + + def update( + self, resource_group_name, service_name, template_name, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the specific Email Template. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param template_name: Email Template Name Identifier. Possible values + include: 'applicationApprovedNotificationMessage', + 'accountClosedDeveloper', + 'quotaLimitApproachingDeveloperNotificationMessage', + 'newDeveloperNotificationMessage', 'emailChangeIdentityDefault', + 'inviteUserNotificationMessage', 'newCommentNotificationMessage', + 'confirmSignUpIdentityDefault', 'newIssueNotificationMessage', + 'purchaseDeveloperNotificationMessage', + 'passwordResetIdentityDefault', + 'passwordResetByAdminNotificationMessage', + 'rejectDeveloperNotificationMessage', + 'requestDeveloperNotificationMessage' + :type template_name: str or + ~azure.mgmt.apimanagement.models.TemplateName + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.EmailTemplateUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'templateName': self._serialize.url("template_name", template_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'EmailTemplateUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}'} + + def delete( + self, resource_group_name, service_name, template_name, if_match, custom_headers=None, raw=False, **operation_config): + """Reset the Email Template to default template provided by the API + Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param template_name: Email Template Name Identifier. Possible values + include: 'applicationApprovedNotificationMessage', + 'accountClosedDeveloper', + 'quotaLimitApproachingDeveloperNotificationMessage', + 'newDeveloperNotificationMessage', 'emailChangeIdentityDefault', + 'inviteUserNotificationMessage', 'newCommentNotificationMessage', + 'confirmSignUpIdentityDefault', 'newIssueNotificationMessage', + 'purchaseDeveloperNotificationMessage', + 'passwordResetIdentityDefault', + 'passwordResetByAdminNotificationMessage', + 'rejectDeveloperNotificationMessage', + 'requestDeveloperNotificationMessage' + :type template_name: str or + ~azure.mgmt.apimanagement.models.TemplateName + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'templateName': self._serialize.url("template_name", template_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_operations.py new file mode 100644 index 000000000000..a7cda28143af --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_operations.py @@ -0,0 +1,471 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class GroupOperations(object): + """GroupOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of groups defined within a service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + description | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| aadObjectId | filter | eq | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of GroupContract + :rtype: + ~azure.mgmt.apimanagement.models.GroupContractPaged[~azure.mgmt.apimanagement.models.GroupContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.GroupContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.GroupContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups'} + + def get_entity_tag( + self, resource_group_name, service_name, group_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the group specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}'} + + def get( + self, resource_group_name, service_name, group_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the group specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: GroupContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.GroupContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('GroupContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}'} + + def create_or_update( + self, resource_group_name, service_name, group_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates a group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.GroupCreateParameters + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: GroupContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.GroupContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'GroupCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('GroupContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('GroupContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}'} + + def update( + self, resource_group_name, service_name, group_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the group specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.GroupUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'GroupUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}'} + + def delete( + self, resource_group_name, service_name, group_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific group of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_user_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_user_operations.py new file mode 100644 index 000000000000..728f33598003 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/group_user_operations.py @@ -0,0 +1,327 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class GroupUserOperations(object): + """GroupUserOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, resource_group_name, service_name, group_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of user entities associated with the group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, + lt | substringof, contains, startswith, endswith |
| lastName | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| email | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| registrationDate + | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, + le, eq, ne, gt, lt | substringof, contains, startswith, endswith | +
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of UserContract + :rtype: + ~azure.mgmt.apimanagement.models.UserContractPaged[~azure.mgmt.apimanagement.models.UserContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.UserContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UserContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users'} + + def check_entity_exists( + self, resource_group_name, service_name, group_id, user_id, custom_headers=None, raw=False, **operation_config): + """Checks that user entity specified by identifier is associated with the + group entity. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: bool or ClientRawResponse if raw=true + :rtype: bool or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.check_entity_exists.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204, 404]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = (response.status_code == 204) + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + return deserialized + check_entity_exists.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{userId}'} + + def create( + self, resource_group_name, service_name, group_id, user_id, custom_headers=None, raw=False, **operation_config): + """Add existing user to existing group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UserContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.UserContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('UserContract', response) + if response.status_code == 201: + deserialized = self._deserialize('UserContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{userId}'} + + def delete( + self, resource_group_name, service_name, group_id, user_id, custom_headers=None, raw=False, **operation_config): + """Remove existing user from existing group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{userId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/identity_provider_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/identity_provider_operations.py new file mode 100644 index 000000000000..601391c42832 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/identity_provider_operations.py @@ -0,0 +1,464 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class IdentityProviderOperations(object): + """IdentityProviderOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Lists a collection of Identity Provider configured in the specified + service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IdentityProviderContract + :rtype: + ~azure.mgmt.apimanagement.models.IdentityProviderContractPaged[~azure.mgmt.apimanagement.models.IdentityProviderContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.IdentityProviderContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.IdentityProviderContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders'} + + def get_entity_tag( + self, resource_group_name, service_name, identity_provider_name, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the identityProvider specified + by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param identity_provider_name: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_name: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'identityProviderName': self._serialize.url("identity_provider_name", identity_provider_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}'} + + def get( + self, resource_group_name, service_name, identity_provider_name, custom_headers=None, raw=False, **operation_config): + """Gets the configuration details of the identity Provider configured in + specified service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param identity_provider_name: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_name: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IdentityProviderContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IdentityProviderContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'identityProviderName': self._serialize.url("identity_provider_name", identity_provider_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IdentityProviderContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}'} + + def create_or_update( + self, resource_group_name, service_name, identity_provider_name, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates the IdentityProvider configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param identity_provider_name: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_name: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.IdentityProviderContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IdentityProviderContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IdentityProviderContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'identityProviderName': self._serialize.url("identity_provider_name", identity_provider_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IdentityProviderContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IdentityProviderContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('IdentityProviderContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}'} + + def update( + self, resource_group_name, service_name, identity_provider_name, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates an existing IdentityProvider configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param identity_provider_name: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_name: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.IdentityProviderUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'identityProviderName': self._serialize.url("identity_provider_name", identity_provider_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IdentityProviderUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}'} + + def delete( + self, resource_group_name, service_name, identity_provider_name, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified identity provider configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param identity_provider_name: Identity Provider Type identifier. + Possible values include: 'facebook', 'google', 'microsoft', 'twitter', + 'aad', 'aadB2C' + :type identity_provider_name: str or + ~azure.mgmt.apimanagement.models.IdentityProviderType + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'identityProviderName': self._serialize.url("identity_provider_name", identity_provider_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/issue_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/issue_operations.py new file mode 100644 index 000000000000..370534595261 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/issue_operations.py @@ -0,0 +1,198 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class IssueOperations(object): + """IssueOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of issues in the specified service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| apiId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| title | filter + | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith + |
| description | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
| authorName | filter | ge, le, + eq, ne, gt, lt | substringof, contains, startswith, endswith |
| + state | filter | eq | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IssueContract + :rtype: + ~azure.mgmt.apimanagement.models.IssueContractPaged[~azure.mgmt.apimanagement.models.IssueContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.IssueContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.IssueContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues'} + + def get( + self, resource_group_name, service_name, issue_id, custom_headers=None, raw=False, **operation_config): + """Gets API Management issue details. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param issue_id: Issue identifier. Must be unique in the current API + Management service instance. + :type issue_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssueContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.IssueContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'issueId': self._serialize.url("issue_id", issue_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('IssueContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues/{issueId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/logger_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/logger_operations.py new file mode 100644 index 000000000000..b8ac594d7456 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/logger_operations.py @@ -0,0 +1,474 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class LoggerOperations(object): + """LoggerOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of loggers in the specified service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| description | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + loggerType | filter | eq | |
| resourceId | filter | ge, le, + eq, ne, gt, lt | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoggerContract + :rtype: + ~azure.mgmt.apimanagement.models.LoggerContractPaged[~azure.mgmt.apimanagement.models.LoggerContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.LoggerContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoggerContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers'} + + def get_entity_tag( + self, resource_group_name, service_name, logger_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the logger specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param logger_id: Logger identifier. Must be unique in the API + Management service instance. + :type logger_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'loggerId': self._serialize.url("logger_id", logger_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}'} + + def get( + self, resource_group_name, service_name, logger_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the logger specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param logger_id: Logger identifier. Must be unique in the API + Management service instance. + :type logger_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoggerContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.LoggerContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'loggerId': self._serialize.url("logger_id", logger_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('LoggerContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}'} + + def create_or_update( + self, resource_group_name, service_name, logger_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates a logger. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param logger_id: Logger identifier. Must be unique in the API + Management service instance. + :type logger_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.LoggerContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoggerContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.LoggerContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'loggerId': self._serialize.url("logger_id", logger_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LoggerContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('LoggerContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('LoggerContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}'} + + def update( + self, resource_group_name, service_name, logger_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates an existing logger. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param logger_id: Logger identifier. Must be unique in the API + Management service instance. + :type logger_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.LoggerUpdateContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'loggerId': self._serialize.url("logger_id", logger_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LoggerUpdateContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}'} + + def delete( + self, resource_group_name, service_name, logger_id, if_match, force=None, custom_headers=None, raw=False, **operation_config): + """Deletes the specified logger. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param logger_id: Logger identifier. Must be unique in the API + Management service instance. + :type logger_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param force: Force deletion even if diagnostic is attached. + :type force: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'loggerId': self._serialize.url("logger_id", logger_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if force is not None: + query_parameters['force'] = self._serialize.query("force", force, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/network_status_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/network_status_operations.py new file mode 100644 index 000000000000..3dd3986da8e7 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/network_status_operations.py @@ -0,0 +1,169 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class NetworkStatusOperations(object): + """NetworkStatusOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the Connectivity Status to the external resources on which the Api + Management service depends from inside the Cloud Service. This also + returns the DNS Servers as visible to the CloudService. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.apimanagement.models.NetworkStatusContractByLocation] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[NetworkStatusContractByLocation]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/networkstatus'} + + def list_by_location( + self, resource_group_name, service_name, location_name, custom_headers=None, raw=False, **operation_config): + """Gets the Connectivity Status to the external resources on which the Api + Management service depends from inside the Cloud Service. This also + returns the DNS Servers as visible to the CloudService. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param location_name: Location in which the API Management service is + deployed. This is one of the Azure Regions like West US, East US, + South Central US. + :type location_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkStatusContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.NetworkStatusContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'locationName': self._serialize.url("location_name", location_name, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkStatusContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/locations/{locationName}/networkstatus'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_operations.py new file mode 100644 index 000000000000..51ca2ea6c65f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_operations.py @@ -0,0 +1,259 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class NotificationOperations(object): + """NotificationOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of properties defined within a service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NotificationContract + :rtype: + ~azure.mgmt.apimanagement.models.NotificationContractPaged[~azure.mgmt.apimanagement.models.NotificationContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.NotificationContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NotificationContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications'} + + def get( + self, resource_group_name, service_name, notification_name, custom_headers=None, raw=False, **operation_config): + """Gets the details of the Notification specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NotificationContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.NotificationContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NotificationContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}'} + + def create_or_update( + self, resource_group_name, service_name, notification_name, if_match=None, custom_headers=None, raw=False, **operation_config): + """Create or Update API Management publisher notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NotificationContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.NotificationContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NotificationContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_email_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_email_operations.py new file mode 100644 index 000000000000..ce26d8d03aab --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_email_operations.py @@ -0,0 +1,314 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class NotificationRecipientEmailOperations(object): + """NotificationRecipientEmailOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_notification( + self, resource_group_name, service_name, notification_name, custom_headers=None, raw=False, **operation_config): + """Gets the list of the Notification Recipient Emails subscribed to a + notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecipientEmailCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.RecipientEmailCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_notification.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecipientEmailCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_notification.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails'} + + def check_entity_exists( + self, resource_group_name, service_name, notification_name, email, custom_headers=None, raw=False, **operation_config): + """Determine if Notification Recipient Email subscribed to the + notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param email: Email identifier. + :type email: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: bool or ClientRawResponse if raw=true + :rtype: bool or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.check_entity_exists.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'email': self._serialize.url("email", email, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204, 404]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = (response.status_code == 204) + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + return deserialized + check_entity_exists.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}'} + + def create_or_update( + self, resource_group_name, service_name, notification_name, email, custom_headers=None, raw=False, **operation_config): + """Adds the Email address to the list of Recipients for the Notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param email: Email identifier. + :type email: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecipientEmailContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.RecipientEmailContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'email': self._serialize.url("email", email, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecipientEmailContract', response) + if response.status_code == 201: + deserialized = self._deserialize('RecipientEmailContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}'} + + def delete( + self, resource_group_name, service_name, notification_name, email, custom_headers=None, raw=False, **operation_config): + """Removes the email from the list of Notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param email: Email identifier. + :type email: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'email': self._serialize.url("email", email, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_user_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_user_operations.py new file mode 100644 index 000000000000..7041ad6440a4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/notification_recipient_user_operations.py @@ -0,0 +1,318 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class NotificationRecipientUserOperations(object): + """NotificationRecipientUserOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_notification( + self, resource_group_name, service_name, notification_name, custom_headers=None, raw=False, **operation_config): + """Gets the list of the Notification Recipient User subscribed to the + notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecipientUserCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.RecipientUserCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_notification.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecipientUserCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_notification.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers'} + + def check_entity_exists( + self, resource_group_name, service_name, notification_name, user_id, custom_headers=None, raw=False, **operation_config): + """Determine if the Notification Recipient User is subscribed to the + notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: bool or ClientRawResponse if raw=true + :rtype: bool or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.check_entity_exists.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204, 404]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = (response.status_code == 204) + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + return deserialized + check_entity_exists.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}'} + + def create_or_update( + self, resource_group_name, service_name, notification_name, user_id, custom_headers=None, raw=False, **operation_config): + """Adds the API Management User to the list of Recipients for the + Notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecipientUserContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.RecipientUserContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecipientUserContract', response) + if response.status_code == 201: + deserialized = self._deserialize('RecipientUserContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}'} + + def delete( + self, resource_group_name, service_name, notification_name, user_id, custom_headers=None, raw=False, **operation_config): + """Removes the API Management user from the list of Notification. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param notification_name: Notification Name Identifier. Possible + values include: 'RequestPublisherNotificationMessage', + 'PurchasePublisherNotificationMessage', + 'NewApplicationNotificationMessage', 'BCC', + 'NewIssuePublisherNotificationMessage', 'AccountClosedPublisher', + 'QuotaLimitApproachingPublisherNotificationMessage' + :type notification_name: str or + ~azure.mgmt.apimanagement.models.NotificationName + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'notificationName': self._serialize.url("notification_name", notification_name, 'str'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/open_id_connect_provider_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/open_id_connect_provider_operations.py new file mode 100644 index 000000000000..1987a36bceed --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/open_id_connect_provider_operations.py @@ -0,0 +1,467 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class OpenIdConnectProviderOperations(object): + """OpenIdConnectProviderOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists of all the OpenId Connect Providers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of OpenidConnectProviderContract + :rtype: + ~azure.mgmt.apimanagement.models.OpenidConnectProviderContractPaged[~azure.mgmt.apimanagement.models.OpenidConnectProviderContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.OpenidConnectProviderContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OpenidConnectProviderContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders'} + + def get_entity_tag( + self, resource_group_name, service_name, opid, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the openIdConnectProvider + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param opid: Identifier of the OpenID Connect Provider. + :type opid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'opid': self._serialize.url("opid", opid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}'} + + def get( + self, resource_group_name, service_name, opid, custom_headers=None, raw=False, **operation_config): + """Gets specific OpenID Connect Provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param opid: Identifier of the OpenID Connect Provider. + :type opid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OpenidConnectProviderContract or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.apimanagement.models.OpenidConnectProviderContract + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'opid': self._serialize.url("opid", opid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('OpenidConnectProviderContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}'} + + def create_or_update( + self, resource_group_name, service_name, opid, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates the OpenID Connect Provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param opid: Identifier of the OpenID Connect Provider. + :type opid: str + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.OpenidConnectProviderContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OpenidConnectProviderContract or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.apimanagement.models.OpenidConnectProviderContract + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'opid': self._serialize.url("opid", opid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'OpenidConnectProviderContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('OpenidConnectProviderContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('OpenidConnectProviderContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}'} + + def update( + self, resource_group_name, service_name, opid, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the specific OpenID Connect Provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param opid: Identifier of the OpenID Connect Provider. + :type opid: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.OpenidConnectProviderUpdateContract + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'opid': self._serialize.url("opid", opid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'OpenidConnectProviderUpdateContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}'} + + def delete( + self, resource_group_name, service_name, opid, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific OpenID Connect Provider of the API Management service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param opid: Identifier of the OpenID Connect Provider. + :type opid: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'opid': self._serialize.url("opid", opid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/operation_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/operation_operations.py new file mode 100644 index 000000000000..d3289232f1e2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/operation_operations.py @@ -0,0 +1,140 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class OperationOperations(object): + """OperationOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_tags( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, include_not_tagged_operations=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of operations associated with tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| apiName + | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| description | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| method | filter | + ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | +
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param include_not_tagged_operations: Include not tagged Operations. + :type include_not_tagged_operations: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagResourceContract + :rtype: + ~azure.mgmt.apimanagement.models.TagResourceContractPaged[~azure.mgmt.apimanagement.models.TagResourceContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if include_not_tagged_operations is not None: + query_parameters['includeNotTaggedOperations'] = self._serialize.query("include_not_tagged_operations", include_not_tagged_operations, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operationsByTags'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_operations.py new file mode 100644 index 000000000000..8413d78ea04c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_operations.py @@ -0,0 +1,378 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class PolicyOperations(object): + """PolicyOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar policy_id: The identifier of the Policy. Constant value: "policy". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.policy_id = "policy" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Lists all the Global Policy definitions of the Api Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PolicyCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies'} + + def get_entity_tag( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the Global policy definition in + the Api Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}'} + + def get( + self, resource_group_name, service_name, format="xml", custom_headers=None, raw=False, **operation_config): + """Get the Global policy definition of the Api Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param format: Policy Export Format. Possible values include: 'xml', + 'rawxml' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyExportFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if format is not None: + query_parameters['format'] = self._serialize.query("format", format, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}'} + + def create_or_update( + self, resource_group_name, service_name, value, if_match=None, format="xml", custom_headers=None, raw=False, **operation_config): + """Creates or updates the global policy configuration of the Api + Management service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param value: Contents of the Policy as defined by the format. + :type value: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param format: Format of the policyContent. Possible values include: + 'xml', 'xml-link', 'rawxml', 'rawxml-link' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyContentFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PolicyContract(value=value, format=format) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PolicyContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}'} + + def delete( + self, resource_group_name, service_name, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the global policy configuration of the Api Management Service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_snippet_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_snippet_operations.py new file mode 100644 index 000000000000..97872fd324fd --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/policy_snippet_operations.py @@ -0,0 +1,104 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class PolicySnippetOperations(object): + """PolicySnippetOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, scope=None, custom_headers=None, raw=False, **operation_config): + """Lists all policy snippets. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param scope: Policy scope. Possible values include: 'Tenant', + 'Product', 'Api', 'Operation', 'All' + :type scope: str or + ~azure.mgmt.apimanagement.models.PolicyScopeContract + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicySnippetsCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicySnippetsCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if scope is not None: + query_parameters['scope'] = self._serialize.query("scope", scope, 'PolicyScopeContract') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PolicySnippetsCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policySnippets'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_api_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_api_operations.py new file mode 100644 index 000000000000..5263136fbbaf --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_api_operations.py @@ -0,0 +1,327 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ProductApiOperations(object): + """ProductApiOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_product( + self, resource_group_name, service_name, product_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of the APIs associated with a product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + description | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| path | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApiContract + :rtype: + ~azure.mgmt.apimanagement.models.ApiContractPaged[~azure.mgmt.apimanagement.models.ApiContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApiContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApiContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis'} + + def check_entity_exists( + self, resource_group_name, service_name, product_id, api_id, custom_headers=None, raw=False, **operation_config): + """Checks that API entity specified by identifier is associated with the + Product entity. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.check_entity_exists.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + check_entity_exists.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}'} + + def create_or_update( + self, resource_group_name, service_name, product_id, api_id, custom_headers=None, raw=False, **operation_config): + """Adds an API to the specified product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApiContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ApiContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApiContract', response) + if response.status_code == 201: + deserialized = self._deserialize('ApiContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}'} + + def delete( + self, resource_group_name, service_name, product_id, api_id, custom_headers=None, raw=False, **operation_config): + """Deletes the specified API from the specified product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_group_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_group_operations.py new file mode 100644 index 000000000000..cefd7ce25cdb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_group_operations.py @@ -0,0 +1,321 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ProductGroupOperations(object): + """ProductGroupOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_product( + self, resource_group_name, service_name, product_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists the collection of developer groups associated with the specified + product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | |
| displayName | + filter | eq, ne | |
| description | filter | eq, ne | | +
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of GroupContract + :rtype: + ~azure.mgmt.apimanagement.models.GroupContractPaged[~azure.mgmt.apimanagement.models.GroupContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.GroupContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.GroupContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups'} + + def check_entity_exists( + self, resource_group_name, service_name, product_id, group_id, custom_headers=None, raw=False, **operation_config): + """Checks that Group entity specified by identifier is associated with the + Product entity. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.check_entity_exists.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + check_entity_exists.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}'} + + def create_or_update( + self, resource_group_name, service_name, product_id, group_id, custom_headers=None, raw=False, **operation_config): + """Adds the association between the specified developer group with the + specified product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: GroupContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.GroupContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GroupContract', response) + if response.status_code == 201: + deserialized = self._deserialize('GroupContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}'} + + def delete( + self, resource_group_name, service_name, product_id, group_id, custom_headers=None, raw=False, **operation_config): + """Deletes the association between the specified group and product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param group_id: Group identifier. Must be unique in the current API + Management service instance. + :type group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'groupId': self._serialize.url("group_id", group_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_operations.py new file mode 100644 index 000000000000..ab5a195f764f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_operations.py @@ -0,0 +1,580 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ProductOperations(object): + """ProductOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, expand_groups=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of products in the specified service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + description | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| state | filter + | eq | |
| groups | expand | | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param expand_groups: When set to true, the response contains an array + of groups that have visibility to the product. The default is false. + :type expand_groups: bool + :param tags: Products which are part of a specific tag. + :type tags: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ProductContract + :rtype: + ~azure.mgmt.apimanagement.models.ProductContractPaged[~azure.mgmt.apimanagement.models.ProductContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if expand_groups is not None: + query_parameters['expandGroups'] = self._serialize.query("expand_groups", expand_groups, 'bool') + if tags is not None: + query_parameters['tags'] = self._serialize.query("tags", tags, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ProductContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ProductContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products'} + + def get_entity_tag( + self, resource_group_name, service_name, product_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the product specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}'} + + def get( + self, resource_group_name, service_name, product_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the product specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ProductContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ProductContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ProductContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}'} + + def create_or_update( + self, resource_group_name, service_name, product_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates a product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param parameters: Create or update parameters. + :type parameters: ~azure.mgmt.apimanagement.models.ProductContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ProductContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.ProductContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ProductContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ProductContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('ProductContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}'} + + def update( + self, resource_group_name, service_name, product_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Update existing product details. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.ProductUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ProductUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}'} + + def delete( + self, resource_group_name, service_name, product_id, if_match, delete_subscriptions=None, custom_headers=None, raw=False, **operation_config): + """Delete product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param delete_subscriptions: Delete existing subscriptions associated + with the product or not. + :type delete_subscriptions: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if delete_subscriptions is not None: + query_parameters['deleteSubscriptions'] = self._serialize.query("delete_subscriptions", delete_subscriptions, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}'} + + def list_by_tags( + self, resource_group_name, service_name, filter=None, top=None, skip=None, include_not_tagged_products=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of products associated with tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + description | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| state | filter + | eq | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param include_not_tagged_products: Include not tagged Products. + :type include_not_tagged_products: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagResourceContract + :rtype: + ~azure.mgmt.apimanagement.models.TagResourceContractPaged[~azure.mgmt.apimanagement.models.TagResourceContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if include_not_tagged_products is not None: + query_parameters['includeNotTaggedProducts'] = self._serialize.query("include_not_tagged_products", include_not_tagged_products, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/productsByTags'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_policy_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_policy_operations.py new file mode 100644 index 000000000000..88efe0a55ee4 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_policy_operations.py @@ -0,0 +1,396 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ProductPolicyOperations(object): + """ProductPolicyOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar policy_id: The identifier of the Policy. Constant value: "policy". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.policy_id = "policy" + + self.config = config + + def list_by_product( + self, resource_group_name, service_name, product_id, custom_headers=None, raw=False, **operation_config): + """Get the policy configuration at the Product level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PolicyCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies'} + + def get_entity_tag( + self, resource_group_name, service_name, product_id, custom_headers=None, raw=False, **operation_config): + """Get the ETag of the policy configuration at the Product level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'} + + def get( + self, resource_group_name, service_name, product_id, format="xml", custom_headers=None, raw=False, **operation_config): + """Get the policy configuration at the Product level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param format: Policy Export Format. Possible values include: 'xml', + 'rawxml' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyExportFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if format is not None: + query_parameters['format'] = self._serialize.query("format", format, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'} + + def create_or_update( + self, resource_group_name, service_name, product_id, value, if_match=None, format="xml", custom_headers=None, raw=False, **operation_config): + """Creates or updates policy configuration for the Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param value: Contents of the Policy as defined by the format. + :type value: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param format: Format of the policyContent. Possible values include: + 'xml', 'xml-link', 'rawxml', 'rawxml-link' + :type format: str or + ~azure.mgmt.apimanagement.models.PolicyContentFormat + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PolicyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PolicyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PolicyContract(value=value, format=format) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PolicyContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('PolicyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'} + + def delete( + self, resource_group_name, service_name, product_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the policy configuration at the Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'policyId': self._serialize.url("self.policy_id", self.policy_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_subscriptions_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_subscriptions_operations.py new file mode 100644 index 000000000000..fee36bbc7942 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/product_subscriptions_operations.py @@ -0,0 +1,136 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ProductSubscriptionsOperations(object): + """ProductSubscriptionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, resource_group_name, service_name, product_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists the collection of subscriptions to the specified product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + stateComment | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
| ownerId | filter | ge, le, eq, + ne, gt, lt | substringof, contains, startswith, endswith |
| + scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| productId | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| state | filter | eq | |
| user | expand | + | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SubscriptionContract + :rtype: + ~azure.mgmt.apimanagement.models.SubscriptionContractPaged[~azure.mgmt.apimanagement.models.SubscriptionContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SubscriptionContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SubscriptionContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/subscriptions'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/property_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/property_operations.py new file mode 100644 index 000000000000..3c243740613c --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/property_operations.py @@ -0,0 +1,463 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class PropertyOperations(object): + """PropertyOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of properties defined within a service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + tags | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith, any, all |
| displayName | filter | ge, le, + eq, ne, gt, lt | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PropertyContract + :rtype: + ~azure.mgmt.apimanagement.models.PropertyContractPaged[~azure.mgmt.apimanagement.models.PropertyContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.PropertyContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PropertyContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties'} + + def get_entity_tag( + self, resource_group_name, service_name, prop_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the property specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param prop_id: Identifier of the property. + :type prop_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'propId': self._serialize.url("prop_id", prop_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties/{propId}'} + + def get( + self, resource_group_name, service_name, prop_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the property specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param prop_id: Identifier of the property. + :type prop_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PropertyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PropertyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'propId': self._serialize.url("prop_id", prop_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PropertyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties/{propId}'} + + def create_or_update( + self, resource_group_name, service_name, prop_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a property. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param prop_id: Identifier of the property. + :type prop_id: str + :param parameters: Create parameters. + :type parameters: ~azure.mgmt.apimanagement.models.PropertyContract + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PropertyContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PropertyContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'propId': self._serialize.url("prop_id", prop_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PropertyContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PropertyContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('PropertyContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties/{propId}'} + + def update( + self, resource_group_name, service_name, prop_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the specific property. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param prop_id: Identifier of the property. + :type prop_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.PropertyUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'propId': self._serialize.url("prop_id", prop_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PropertyUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties/{propId}'} + + def delete( + self, resource_group_name, service_name, prop_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific property from the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param prop_id: Identifier of the property. + :type prop_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'propId': self._serialize.url("prop_id", prop_id, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/properties/{propId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_counter_keys_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_counter_keys_operations.py new file mode 100644 index 000000000000..6c6da85b6b02 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_counter_keys_operations.py @@ -0,0 +1,180 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class QuotaByCounterKeysOperations(object): + """QuotaByCounterKeysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, quota_counter_key, custom_headers=None, raw=False, **operation_config): + """Lists a collection of current quota counter periods associated with the + counter-key configured in the policy on the specified service instance. + The api does not support paging yet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param quota_counter_key: Quota counter key identifier.This is the + result of expression defined in counter-key attribute of the + quota-by-key policy.For Example, if you specify counter-key="boo" in + the policy, then it’s accessible by "boo" counter key. But if it’s + defined as counter-key="@("b"+"a")" then it will be accessible by "ba" + key + :type quota_counter_key: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: QuotaCounterCollection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.QuotaCounterCollection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'quotaCounterKey': self._serialize.url("quota_counter_key", quota_counter_key, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('QuotaCounterCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}'} + + def update( + self, resource_group_name, service_name, quota_counter_key, calls_count=None, kb_transferred=None, custom_headers=None, raw=False, **operation_config): + """Updates all the quota counter values specified with the existing quota + counter key to a value in the specified service instance. This should + be used for reset of the quota counter values. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param quota_counter_key: Quota counter key identifier.This is the + result of expression defined in counter-key attribute of the + quota-by-key policy.For Example, if you specify counter-key="boo" in + the policy, then it’s accessible by "boo" counter key. But if it’s + defined as counter-key="@("b"+"a")" then it will be accessible by "ba" + key + :type quota_counter_key: str + :param calls_count: Number of times Counter was called. + :type calls_count: int + :param kb_transferred: Data Transferred in KiloBytes. + :type kb_transferred: float + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.QuotaCounterValueContractProperties(calls_count=calls_count, kb_transferred=kb_transferred) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'quotaCounterKey': self._serialize.url("quota_counter_key", quota_counter_key, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'QuotaCounterValueContractProperties') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_period_keys_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_period_keys_operations.py new file mode 100644 index 000000000000..ac05c971c9ae --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/quota_by_period_keys_operations.py @@ -0,0 +1,184 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class QuotaByPeriodKeysOperations(object): + """QuotaByPeriodKeysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def get( + self, resource_group_name, service_name, quota_counter_key, quota_period_key, custom_headers=None, raw=False, **operation_config): + """Gets the value of the quota counter associated with the counter-key in + the policy for the specific period in service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param quota_counter_key: Quota counter key identifier.This is the + result of expression defined in counter-key attribute of the + quota-by-key policy.For Example, if you specify counter-key="boo" in + the policy, then it’s accessible by "boo" counter key. But if it’s + defined as counter-key="@("b"+"a")" then it will be accessible by "ba" + key + :type quota_counter_key: str + :param quota_period_key: Quota period key identifier. + :type quota_period_key: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: QuotaCounterContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.QuotaCounterContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'quotaCounterKey': self._serialize.url("quota_counter_key", quota_counter_key, 'str'), + 'quotaPeriodKey': self._serialize.url("quota_period_key", quota_period_key, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('QuotaCounterContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}/periods/{quotaPeriodKey}'} + + def update( + self, resource_group_name, service_name, quota_counter_key, quota_period_key, calls_count=None, kb_transferred=None, custom_headers=None, raw=False, **operation_config): + """Updates an existing quota counter value in the specified service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param quota_counter_key: Quota counter key identifier.This is the + result of expression defined in counter-key attribute of the + quota-by-key policy.For Example, if you specify counter-key="boo" in + the policy, then it’s accessible by "boo" counter key. But if it’s + defined as counter-key="@("b"+"a")" then it will be accessible by "ba" + key + :type quota_counter_key: str + :param quota_period_key: Quota period key identifier. + :type quota_period_key: str + :param calls_count: Number of times Counter was called. + :type calls_count: int + :param kb_transferred: Data Transferred in KiloBytes. + :type kb_transferred: float + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.QuotaCounterValueContractProperties(calls_count=calls_count, kb_transferred=kb_transferred) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'quotaCounterKey': self._serialize.url("quota_counter_key", quota_counter_key, 'str'), + 'quotaPeriodKey': self._serialize.url("quota_period_key", quota_period_key, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'QuotaCounterValueContractProperties') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}/periods/{quotaPeriodKey}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/region_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/region_operations.py new file mode 100644 index 000000000000..c57466505a4a --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/region_operations.py @@ -0,0 +1,106 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class RegionOperations(object): + """RegionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Lists all azure regions in which the service exists. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RegionContract + :rtype: + ~azure.mgmt.apimanagement.models.RegionContractPaged[~azure.mgmt.apimanagement.models.RegionContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.RegionContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RegionContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/regions'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/reports_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/reports_operations.py new file mode 100644 index 000000000000..1e238b46aa3f --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/reports_operations.py @@ -0,0 +1,824 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ReportsOperations(object): + """ReportsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_api( + self, resource_group_name, service_name, filter, top=None, skip=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: The filter to apply on the operation. + :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param orderby: OData order by query option. + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byApi'} + + def list_by_user( + self, resource_group_name, service_name, filter, top=None, skip=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by User. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter | ge, le | |
| displayName | select, + orderBy | | |
| userId | select, filter | eq | | +
| apiRegion | filter | eq | |
| productId | filter | eq + | |
| subscriptionId | filter | eq | |
| apiId | + filter | eq | |
| operationId | filter | eq | |
| + callCountSuccess | select, orderBy | | |
| + callCountBlocked | select, orderBy | | |
| + callCountFailed | select, orderBy | | |
| callCountOther + | select, orderBy | | |
| callCountTotal | select, + orderBy | | |
| bandwidth | select, orderBy | | | +
| cacheHitsCount | select | | |
| cacheMissCount | + select | | |
| apiTimeAvg | select, orderBy | | | +
| apiTimeMin | select | | |
| apiTimeMax | select | + | |
| serviceTimeAvg | select | | |
| + serviceTimeMin | select | | |
| serviceTimeMax | select | + | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param orderby: OData order by query option. + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_user.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_user.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byUser'} + + def list_by_operation( + self, resource_group_name, service_name, filter, top=None, skip=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by API Operations. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter | ge, le | |
| displayName | select, + orderBy | | |
| apiRegion | filter | eq | |
| + userId | filter | eq | |
| productId | filter | eq | | +
| subscriptionId | filter | eq | |
| apiId | filter | eq + | |
| operationId | select, filter | eq | |
| + callCountSuccess | select, orderBy | | |
| + callCountBlocked | select, orderBy | | |
| + callCountFailed | select, orderBy | | |
| callCountOther + | select, orderBy | | |
| callCountTotal | select, + orderBy | | |
| bandwidth | select, orderBy | | | +
| cacheHitsCount | select | | |
| cacheMissCount | + select | | |
| apiTimeAvg | select, orderBy | | | +
| apiTimeMin | select | | |
| apiTimeMax | select | + | |
| serviceTimeAvg | select | | |
| + serviceTimeMin | select | | |
| serviceTimeMax | select | + | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param orderby: OData order by query option. + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byOperation'} + + def list_by_product( + self, resource_group_name, service_name, filter, top=None, skip=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter | ge, le | |
| displayName | select, + orderBy | | |
| apiRegion | filter | eq | |
| + userId | filter | eq | |
| productId | select, filter | eq | + |
| subscriptionId | filter | eq | |
| callCountSuccess + | select, orderBy | | |
| callCountBlocked | select, + orderBy | | |
| callCountFailed | select, orderBy | | + |
| callCountOther | select, orderBy | | |
| + callCountTotal | select, orderBy | | |
| bandwidth | + select, orderBy | | |
| cacheHitsCount | select | | + |
| cacheMissCount | select | | |
| apiTimeAvg | + select, orderBy | | |
| apiTimeMin | select | | | +
| apiTimeMax | select | | |
| serviceTimeAvg | + select | | |
| serviceTimeMin | select | | | +
| serviceTimeMax | select | | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param orderby: OData order by query option. + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byProduct'} + + def list_by_geo( + self, resource_group_name, service_name, filter, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by geography. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter | ge, le | |
| country | select | | + |
| region | select | | |
| zip | select | | + |
| apiRegion | filter | eq | |
| userId | filter | eq | + |
| productId | filter | eq | |
| subscriptionId | + filter | eq | |
| apiId | filter | eq | |
| + operationId | filter | eq | |
| callCountSuccess | select | + | |
| callCountBlocked | select | | |
| + callCountFailed | select | | |
| callCountOther | select + | | |
| bandwidth | select, orderBy | | |
| + cacheHitsCount | select | | |
| cacheMissCount | select | + | |
| apiTimeAvg | select | | |
| apiTimeMin | + select | | |
| apiTimeMax | select | | |
| + serviceTimeAvg | select | | |
| serviceTimeMin | select | + | |
| serviceTimeMax | select | | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_geo.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_geo.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byGeo'} + + def list_by_subscription( + self, resource_group_name, service_name, filter, top=None, skip=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by subscription. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter | ge, le | |
| displayName | select, + orderBy | | |
| apiRegion | filter | eq | |
| + userId | select, filter | eq | |
| productId | select, filter + | eq | |
| subscriptionId | select, filter | eq | | +
| callCountSuccess | select, orderBy | | |
| + callCountBlocked | select, orderBy | | |
| + callCountFailed | select, orderBy | | |
| callCountOther + | select, orderBy | | |
| callCountTotal | select, + orderBy | | |
| bandwidth | select, orderBy | | | +
| cacheHitsCount | select | | |
| cacheMissCount | + select | | |
| apiTimeAvg | select, orderBy | | | +
| apiTimeMin | select | | |
| apiTimeMax | select | + | |
| serviceTimeAvg | select | | |
| + serviceTimeMin | select | | |
| serviceTimeMax | select | + | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param orderby: OData order by query option. + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/bySubscription'} + + def list_by_time( + self, resource_group_name, service_name, filter, interval, top=None, skip=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by Time. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter, select | ge, le | |
| interval | select | + | |
| apiRegion | filter | eq | |
| userId | filter + | eq | |
| productId | filter | eq | |
| + subscriptionId | filter | eq | |
| apiId | filter | eq | + |
| operationId | filter | eq | |
| callCountSuccess | + select | | |
| callCountBlocked | select | | | +
| callCountFailed | select | | |
| callCountOther | + select | | |
| bandwidth | select, orderBy | | | +
| cacheHitsCount | select | | |
| cacheMissCount | + select | | |
| apiTimeAvg | select | | |
| + apiTimeMin | select | | |
| apiTimeMax | select | | + |
| serviceTimeAvg | select | | |
| serviceTimeMin | + select | | |
| serviceTimeMax | select | | | +
+ :type filter: str + :param interval: By time interval. Interval must be multiple of 15 + minutes and may not be zero. The value should be in ISO 8601 format + (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be + used to convert TimeSpan to a valid interval string: + XmlConvert.ToString(new TimeSpan(hours, minutes, seconds)). + :type interval: timedelta + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param orderby: OData order by query option. + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.ReportRecordContractPaged[~azure.mgmt.apimanagement.models.ReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_time.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['interval'] = self._serialize.query("interval", interval, 'duration') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_time.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byTime'} + + def list_by_request( + self, resource_group_name, service_name, filter, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists report records by Request. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + timestamp | filter | ge, le | |
| apiId | filter | eq | | +
| operationId | filter | eq | |
| productId | filter | + eq | |
| userId | filter | eq | |
| apiRegion | + filter | eq | |
| subscriptionId | filter | eq | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RequestReportRecordContract + :rtype: + ~azure.mgmt.apimanagement.models.RequestReportRecordContractPaged[~azure.mgmt.apimanagement.models.RequestReportRecordContract] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_request.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RequestReportRecordContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RequestReportRecordContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_request.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byRequest'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_in_settings_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_in_settings_operations.py new file mode 100644 index 000000000000..c93a303527d2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_in_settings_operations.py @@ -0,0 +1,297 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class SignInSettingsOperations(object): + """SignInSettingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def get_entity_tag( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the SignInSettings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signin'} + + def get( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Get Sign In Settings for the Portal. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PortalSigninSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PortalSigninSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PortalSigninSettings', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signin'} + + def update( + self, resource_group_name, service_name, if_match, enabled=None, custom_headers=None, raw=False, **operation_config): + """Update Sign-In settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param enabled: Redirect Anonymous users to the Sign-In page. + :type enabled: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PortalSigninSettings(enabled=enabled) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PortalSigninSettings') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signin'} + + def create_or_update( + self, resource_group_name, service_name, if_match=None, enabled=None, custom_headers=None, raw=False, **operation_config): + """Create or Update Sign-In settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param enabled: Redirect Anonymous users to the Sign-In page. + :type enabled: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PortalSigninSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PortalSigninSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PortalSigninSettings(enabled=enabled) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PortalSigninSettings') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PortalSigninSettings', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signin'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_up_settings_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_up_settings_operations.py new file mode 100644 index 000000000000..b8639ccaff81 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/sign_up_settings_operations.py @@ -0,0 +1,303 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class SignUpSettingsOperations(object): + """SignUpSettingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def get_entity_tag( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the SignUpSettings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup'} + + def get( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Get Sign Up Settings for the Portal. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PortalSignupSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PortalSignupSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('PortalSignupSettings', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup'} + + def update( + self, resource_group_name, service_name, if_match, enabled=None, terms_of_service=None, custom_headers=None, raw=False, **operation_config): + """Update Sign-Up settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param enabled: Allow users to sign up on a developer portal. + :type enabled: bool + :param terms_of_service: Terms of service contract properties. + :type terms_of_service: + ~azure.mgmt.apimanagement.models.TermsOfServiceProperties + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PortalSignupSettings(enabled=enabled, terms_of_service=terms_of_service) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PortalSignupSettings') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup'} + + def create_or_update( + self, resource_group_name, service_name, if_match=None, enabled=None, terms_of_service=None, custom_headers=None, raw=False, **operation_config): + """Create or Update Sign-Up settings. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param enabled: Allow users to sign up on a developer portal. + :type enabled: bool + :param terms_of_service: Terms of service contract properties. + :type terms_of_service: + ~azure.mgmt.apimanagement.models.TermsOfServiceProperties + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PortalSignupSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.PortalSignupSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.PortalSignupSettings(enabled=enabled, terms_of_service=terms_of_service) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PortalSignupSettings') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PortalSignupSettings', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/subscription_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/subscription_operations.py new file mode 100644 index 000000000000..848dd5ecd901 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/subscription_operations.py @@ -0,0 +1,607 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class SubscriptionOperations(object): + """SubscriptionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all subscriptions of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + stateComment | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
| ownerId | filter | ge, le, eq, + ne, gt, lt | substringof, contains, startswith, endswith |
| + scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| productId | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| state | filter | eq | |
| user | expand | + | |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SubscriptionContract + :rtype: + ~azure.mgmt.apimanagement.models.SubscriptionContractPaged[~azure.mgmt.apimanagement.models.SubscriptionContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SubscriptionContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SubscriptionContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions'} + + def get_entity_tag( + self, resource_group_name, service_name, sid, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the apimanagement subscription + specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}'} + + def get( + self, resource_group_name, service_name, sid, custom_headers=None, raw=False, **operation_config): + """Gets the specified Subscription entity. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SubscriptionContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.SubscriptionContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('SubscriptionContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}'} + + def create_or_update( + self, resource_group_name, service_name, sid, parameters, notify=None, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates the subscription of specified user to the specified + product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param parameters: Create parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.SubscriptionCreateParameters + :param notify: Notify change in Subscription State. + - If false, do not send any email notification for change of state of + subscription + - If true, send email notification of change of state of subscription + :type notify: bool + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SubscriptionContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.SubscriptionContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if notify is not None: + query_parameters['notify'] = self._serialize.query("notify", notify, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SubscriptionCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('SubscriptionContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('SubscriptionContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}'} + + def update( + self, resource_group_name, service_name, sid, parameters, if_match, notify=None, custom_headers=None, raw=False, **operation_config): + """Updates the details of a subscription specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.SubscriptionUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param notify: Notify change in Subscription State. + - If false, do not send any email notification for change of state of + subscription + - If true, send email notification of change of state of subscription + :type notify: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if notify is not None: + query_parameters['notify'] = self._serialize.query("notify", notify, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SubscriptionUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}'} + + def delete( + self, resource_group_name, service_name, sid, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes the specified subscription. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}'} + + def regenerate_primary_key( + self, resource_group_name, service_name, sid, custom_headers=None, raw=False, **operation_config): + """Regenerates primary key of existing subscription of the API Management + service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.regenerate_primary_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + regenerate_primary_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regeneratePrimaryKey'} + + def regenerate_secondary_key( + self, resource_group_name, service_name, sid, custom_headers=None, raw=False, **operation_config): + """Regenerates secondary key of existing subscription of the API + Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param sid: Subscription entity Identifier. The entity represents the + association between a user and a product in API Management. + :type sid: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.regenerate_secondary_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'sid': self._serialize.url("sid", sid, 'str', max_length=256, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + regenerate_secondary_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regenerateSecondaryKey'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_operations.py new file mode 100644 index 000000000000..9c314c560929 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_operations.py @@ -0,0 +1,1586 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class TagOperations(object): + """TagOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_operation( + self, resource_group_name, service_name, api_id, operation_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all Tags associated with the Operation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagContract + :rtype: + ~azure.mgmt.apimanagement.models.TagContractPaged[~azure.mgmt.apimanagement.models.TagContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags'} + + def get_entity_state_by_operation( + self, resource_group_name, service_name, api_id, operation_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state version of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_state_by_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_state_by_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}'} + + def get_by_operation( + self, resource_group_name, service_name, api_id, operation_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Get tag associated with the Operation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_by_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get_by_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}'} + + def assign_to_operation( + self, resource_group_name, service_name, api_id, operation_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Assign tag to the Operation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.assign_to_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + if response.status_code == 201: + deserialized = self._deserialize('TagContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + assign_to_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}'} + + def detach_from_operation( + self, resource_group_name, service_name, api_id, operation_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Detach the tag from the Operation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param operation_id: Operation identifier within an API. Must be + unique in the current API Management service instance. + :type operation_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.detach_from_operation.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'operationId': self._serialize.url("operation_id", operation_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + detach_from_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}'} + + def list_by_api( + self, resource_group_name, service_name, api_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all Tags associated with the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagContract + :rtype: + ~azure.mgmt.apimanagement.models.TagContractPaged[~azure.mgmt.apimanagement.models.TagContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags'} + + def get_entity_state_by_api( + self, resource_group_name, service_name, api_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state version of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_state_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_state_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}'} + + def get_by_api( + self, resource_group_name, service_name, api_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Get tag associated with the API. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_by_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get_by_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}'} + + def assign_to_api( + self, resource_group_name, service_name, api_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Assign tag to the Api. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.assign_to_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + assign_to_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}'} + + def detach_from_api( + self, resource_group_name, service_name, api_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Detach the tag from the Api. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param api_id: API revision identifier. Must be unique in the current + API Management service instance. Non-current revision has ;rev=n as a + suffix where n is the revision number. + :type api_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.detach_from_api.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'apiId': self._serialize.url("api_id", api_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + detach_from_api.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}'} + + def list_by_product( + self, resource_group_name, service_name, product_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all Tags associated with the Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagContract + :rtype: + ~azure.mgmt.apimanagement.models.TagContractPaged[~azure.mgmt.apimanagement.models.TagContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags'} + + def get_entity_state_by_product( + self, resource_group_name, service_name, product_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state version of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_state_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_state_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}'} + + def get_by_product( + self, resource_group_name, service_name, product_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Get tag associated with the Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_by_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get_by_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}'} + + def assign_to_product( + self, resource_group_name, service_name, product_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Assign tag to the Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.assign_to_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + if response.status_code == 201: + deserialized = self._deserialize('TagContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + assign_to_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}'} + + def detach_from_product( + self, resource_group_name, service_name, product_id, tag_id, custom_headers=None, raw=False, **operation_config): + """Detach the tag from the Product. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param product_id: Product identifier. Must be unique in the current + API Management service instance. + :type product_id: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.detach_from_product.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'productId': self._serialize.url("product_id", product_id, 'str', max_length=256, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + detach_from_product.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}'} + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, scope=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of tags defined within a service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param scope: Scope like 'apis', 'products' or 'apis/{apiId} + :type scope: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagContract + :rtype: + ~azure.mgmt.apimanagement.models.TagContractPaged[~azure.mgmt.apimanagement.models.TagContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if scope is not None: + query_parameters['scope'] = self._serialize.query("scope", scope, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags'} + + def get_entity_state( + self, resource_group_name, service_name, tag_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state version of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_state.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_state.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}'} + + def get( + self, resource_group_name, service_name, tag_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}'} + + def create_or_update( + self, resource_group_name, service_name, tag_id, display_name, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates a tag. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param display_name: Tag name. + :type display_name: str + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TagContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.TagContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.TagCreateUpdateParameters(display_name=display_name) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagCreateUpdateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('TagContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}'} + + def update( + self, resource_group_name, service_name, tag_id, if_match, display_name, custom_headers=None, raw=False, **operation_config): + """Updates the details of the tag specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param display_name: Tag name. + :type display_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.TagCreateUpdateParameters(display_name=display_name) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagCreateUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}'} + + def delete( + self, resource_group_name, service_name, tag_id, if_match, custom_headers=None, raw=False, **operation_config): + """Deletes specific tag of the API Management service instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param tag_id: Tag identifier. Must be unique in the current API + Management service instance. + :type tag_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'tagId': self._serialize.url("tag_id", tag_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_resource_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_resource_operations.py new file mode 100644 index 000000000000..4fb092521714 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tag_resource_operations.py @@ -0,0 +1,138 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class TagResourceOperations(object): + """TagResourceOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of resources associated with tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + aid | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| displayName | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| apiRevision | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| path | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| description | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| method | filter | + ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | +
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
| terms | filter | ge, le, eq, + ne, gt, lt | substringof, contains, startswith, endswith |
| + state | filter | eq | |
| isCurrent | filter | eq | | +
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TagResourceContract + :rtype: + ~azure.mgmt.apimanagement.models.TagResourceContractPaged[~azure.mgmt.apimanagement.models.TagResourceContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TagResourceContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tagResources'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_git_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_git_operations.py new file mode 100644 index 000000000000..84740f7e47f6 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_git_operations.py @@ -0,0 +1,212 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class TenantAccessGitOperations(object): + """TenantAccessGitOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar access_name: The identifier of the Access configuration. Constant value: "access". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.access_name = "access" + + self.config = config + + def get( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the Git access configuration for the tenant. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AccessInformationContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.AccessInformationContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('AccessInformationContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git'} + + def regenerate_primary_key( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Regenerate primary access key for GIT. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.regenerate_primary_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + regenerate_primary_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regeneratePrimaryKey'} + + def regenerate_secondary_key( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Regenerate secondary access key for GIT. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.regenerate_secondary_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + regenerate_secondary_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regenerateSecondaryKey'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_operations.py new file mode 100644 index 000000000000..3c7deb2493c9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_access_operations.py @@ -0,0 +1,334 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class TenantAccessOperations(object): + """TenantAccessOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar access_name: The identifier of the Access configuration. Constant value: "access". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.access_name = "access" + + self.config = config + + def get_entity_tag( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Tenant access metadata. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}'} + + def get( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Get tenant access information details. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AccessInformationContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.AccessInformationContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('AccessInformationContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}'} + + def update( + self, resource_group_name, service_name, if_match, enabled=None, custom_headers=None, raw=False, **operation_config): + """Update tenant access information details. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param enabled: Determines whether direct access is enabled. + :type enabled: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.AccessInformationUpdateParameters(enabled=enabled) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AccessInformationUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}'} + + def regenerate_primary_key( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Regenerate primary access key. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.regenerate_primary_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + regenerate_primary_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regeneratePrimaryKey'} + + def regenerate_secondary_key( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Regenerate secondary access key. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.regenerate_secondary_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'accessName': self._serialize.url("self.access_name", self.access_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + regenerate_secondary_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regenerateSecondaryKey'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_configuration_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_configuration_operations.py new file mode 100644 index 000000000000..7b4a9bf37a4d --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/tenant_configuration_operations.py @@ -0,0 +1,435 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class TenantConfigurationOperations(object): + """TenantConfigurationOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + :ivar configuration_name: The identifier of the Git Configuration Operation. Constant value: "configuration". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + self.configuration_name = "configuration" + + self.config = config + + + def _deploy_initial( + self, resource_group_name, service_name, branch, force=None, custom_headers=None, raw=False, **operation_config): + parameters = models.DeployConfigurationParameters(branch=branch, force=force) + + # Construct URL + url = self.deploy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'configurationName': self._serialize.url("self.configuration_name", self.configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DeployConfigurationParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationResultContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def deploy( + self, resource_group_name, service_name, branch, force=None, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation applies changes from the specified Git branch to the + configuration database. This is a long running operation and could take + several minutes to complete. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param branch: The name of the Git branch from which the configuration + is to be deployed to the configuration database. + :type branch: str + :param force: The value enforcing deleting subscriptions to products + that are deleted in this update. + :type force: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns OperationResultContract + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.OperationResultContract] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.OperationResultContract]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._deploy_initial( + resource_group_name=resource_group_name, + service_name=service_name, + branch=branch, + force=force, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('OperationResultContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + deploy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/deploy'} + + + def _save_initial( + self, resource_group_name, service_name, branch, force=None, custom_headers=None, raw=False, **operation_config): + parameters = models.SaveConfigurationParameter(branch=branch, force=force) + + # Construct URL + url = self.save.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'configurationName': self._serialize.url("self.configuration_name", self.configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SaveConfigurationParameter') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationResultContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def save( + self, resource_group_name, service_name, branch, force=None, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation creates a commit with the current configuration snapshot + to the specified branch in the repository. This is a long running + operation and could take several minutes to complete. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param branch: The name of the Git branch in which to commit the + current configuration snapshot. + :type branch: str + :param force: The value if true, the current configuration database is + committed to the Git repository, even if the Git repository has newer + changes that would be overwritten. + :type force: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns OperationResultContract + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.OperationResultContract] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.OperationResultContract]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._save_initial( + resource_group_name=resource_group_name, + service_name=service_name, + branch=branch, + force=force, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('OperationResultContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + save.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/save'} + + + def _validate_initial( + self, resource_group_name, service_name, branch, force=None, custom_headers=None, raw=False, **operation_config): + parameters = models.DeployConfigurationParameters(branch=branch, force=force) + + # Construct URL + url = self.validate.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'configurationName': self._serialize.url("self.configuration_name", self.configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DeployConfigurationParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationResultContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def validate( + self, resource_group_name, service_name, branch, force=None, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation validates the changes in the specified Git branch. This + is a long running operation and could take several minutes to complete. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param branch: The name of the Git branch from which the configuration + is to be deployed to the configuration database. + :type branch: str + :param force: The value enforcing deleting subscriptions to products + that are deleted in this update. + :type force: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns OperationResultContract + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.apimanagement.models.OperationResultContract] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.apimanagement.models.OperationResultContract]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._validate_initial( + resource_group_name=resource_group_name, + service_name=service_name, + branch=branch, + force=force, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('OperationResultContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + validate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/validate'} + + def get_sync_state( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets the status of the most recent synchronization between the + configuration database and the Git repository. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TenantConfigurationSyncStateContract or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.apimanagement.models.TenantConfigurationSyncStateContract + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_sync_state.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'configurationName': self._serialize.url("self.configuration_name", self.configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TenantConfigurationSyncStateContract', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_sync_state.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/syncState'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_confirmation_password_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_confirmation_password_operations.py new file mode 100644 index 000000000000..faa76b03f4d2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_confirmation_password_operations.py @@ -0,0 +1,93 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class UserConfirmationPasswordOperations(object): + """UserConfirmationPasswordOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def send( + self, resource_group_name, service_name, user_id, custom_headers=None, raw=False, **operation_config): + """Sends confirmation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.send.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + send.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/confirmations/password/send'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_group_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_group_operations.py new file mode 100644 index 000000000000..d43a29185134 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_group_operations.py @@ -0,0 +1,129 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class UserGroupOperations(object): + """UserGroupOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, resource_group_name, service_name, user_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists all user groups. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + description | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of GroupContract + :rtype: + ~azure.mgmt.apimanagement.models.GroupContractPaged[~azure.mgmt.apimanagement.models.GroupContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.GroupContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.GroupContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/groups'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_identities_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_identities_operations.py new file mode 100644 index 000000000000..6a9ce0a5b8e2 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_identities_operations.py @@ -0,0 +1,110 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class UserIdentitiesOperations(object): + """UserIdentitiesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, resource_group_name, service_name, user_id, custom_headers=None, raw=False, **operation_config): + """List of all user identities. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of UserIdentityContract + :rtype: + ~azure.mgmt.apimanagement.models.UserIdentityContractPaged[~azure.mgmt.apimanagement.models.UserIdentityContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.UserIdentityContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UserIdentityContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/identities'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_operations.py new file mode 100644 index 000000000000..79e55902d2e5 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_operations.py @@ -0,0 +1,634 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class UserOperations(object): + """UserOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list_by_service( + self, resource_group_name, service_name, filter=None, top=None, skip=None, expand_groups=None, custom_headers=None, raw=False, **operation_config): + """Lists a collection of registered users in the specified service + instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, + lt | substringof, contains, startswith, endswith |
| lastName | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
| email | filter | ge, le, eq, ne, gt, lt | + substringof, contains, startswith, endswith |
| state | filter | + eq | |
| registrationDate | filter | ge, le, eq, ne, gt, lt | + |
| note | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
| groups | expand | | | +
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param expand_groups: Detailed Group in response. + :type expand_groups: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of UserContract + :rtype: + ~azure.mgmt.apimanagement.models.UserContractPaged[~azure.mgmt.apimanagement.models.UserContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if expand_groups is not None: + query_parameters['expandGroups'] = self._serialize.query("expand_groups", expand_groups, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.UserContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UserContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users'} + + def get_entity_tag( + self, resource_group_name, service_name, user_id, custom_headers=None, raw=False, **operation_config): + """Gets the entity state (Etag) version of the user specified by its + identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_tag.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + client_raw_response.add_headers({ + 'ETag': 'str', + }) + return client_raw_response + get_entity_tag.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}'} + + def get( + self, resource_group_name, service_name, user_id, custom_headers=None, raw=False, **operation_config): + """Gets the details of the user specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UserContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.UserContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('UserContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}'} + + def create_or_update( + self, resource_group_name, service_name, user_id, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or Updates a user. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param parameters: Create or update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.UserCreateParameters + :param if_match: ETag of the Entity. Not required when creating an + entity, but required when updating an entity. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UserContract or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.UserContract or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'UserCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('UserContract', response) + header_dict = { + 'ETag': 'str', + } + if response.status_code == 201: + deserialized = self._deserialize('UserContract', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}'} + + def update( + self, resource_group_name, service_name, user_id, parameters, if_match, custom_headers=None, raw=False, **operation_config): + """Updates the details of the user specified by its identifier. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param parameters: Update parameters. + :type parameters: + ~azure.mgmt.apimanagement.models.UserUpdateParameters + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'UserUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}'} + + def delete( + self, resource_group_name, service_name, user_id, if_match, delete_subscriptions=None, notify=None, custom_headers=None, raw=False, **operation_config): + """Deletes specific user. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param if_match: ETag of the Entity. ETag should match the current + entity state from the header response of the GET request or it should + be * for unconditional update. + :type if_match: str + :param delete_subscriptions: Whether to delete user's subscription or + not. + :type delete_subscriptions: bool + :param notify: Send an Account Closed Email notification to the User. + :type notify: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if delete_subscriptions is not None: + query_parameters['deleteSubscriptions'] = self._serialize.query("delete_subscriptions", delete_subscriptions, 'bool') + if notify is not None: + query_parameters['notify'] = self._serialize.query("notify", notify, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}'} + + def generate_sso_url( + self, resource_group_name, service_name, user_id, custom_headers=None, raw=False, **operation_config): + """Retrieves a redirection URL containing an authentication token for + signing a given user into the developer portal. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: GenerateSsoUrlResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.GenerateSsoUrlResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.generate_sso_url.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GenerateSsoUrlResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + generate_sso_url.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/generateSsoUrl'} + + def get_shared_access_token( + self, resource_group_name, service_name, user_id, expiry, key_type="primary", custom_headers=None, raw=False, **operation_config): + """Gets the Shared Access Authorization Token for the User. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param key_type: The Key to be used to generate token for user. + Possible values include: 'primary', 'secondary' + :type key_type: str or ~azure.mgmt.apimanagement.models.KeyType + :param expiry: The Expiry time of the Token. Maximum token expiry time + is set to 30 days. The date conforms to the following format: + `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard. + :type expiry: datetime + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UserTokenResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.apimanagement.models.UserTokenResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.UserTokenParameters(key_type=key_type, expiry=expiry) + + # Construct URL + url = self.get_shared_access_token.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'UserTokenParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('UserTokenResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_shared_access_token.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/token'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_subscription_operations.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_subscription_operations.py new file mode 100644 index 000000000000..bf2802f5bab9 --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/operations/user_subscription_operations.py @@ -0,0 +1,135 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class UserSubscriptionOperations(object): + """UserSubscriptionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2019-01-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-01-01" + + self.config = config + + def list( + self, resource_group_name, service_name, user_id, filter=None, top=None, skip=None, custom_headers=None, raw=False, **operation_config): + """Lists the collection of subscriptions of the specified user. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the API Management service. + :type service_name: str + :param user_id: User identifier. Must be unique in the current API + Management service instance. + :type user_id: str + :param filter: | Field | Usage | Supported operators + | Supported functions + |
|-------------|-------------|-------------|-------------|
| + name | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| displayName | filter | ge, le, eq, ne, + gt, lt | substringof, contains, startswith, endswith |
| + stateComment | filter | ge, le, eq, ne, gt, lt | substringof, + contains, startswith, endswith |
| ownerId | filter | ge, le, eq, + ne, gt, lt | substringof, contains, startswith, endswith |
| + scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, + startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt + | substringof, contains, startswith, endswith |
| productId | + filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, + endswith |
+ :type filter: str + :param top: Number of records to return. + :type top: int + :param skip: Number of records to skip. + :type skip: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SubscriptionContract + :rtype: + ~azure.mgmt.apimanagement.models.SubscriptionContractPaged[~azure.mgmt.apimanagement.models.SubscriptionContract] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str', max_length=50, min_length=1, pattern=r'^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$'), + 'userId': self._serialize.url("user_id", user_id, 'str', max_length=80, min_length=1, pattern=r'^[^*#&+:<>?]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int', minimum=1) + if skip is not None: + query_parameters['$skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SubscriptionContractPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SubscriptionContractPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/subscriptions'} diff --git a/azure-mgmt-apimanagement/azure/mgmt/apimanagement/version.py b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/version.py new file mode 100644 index 000000000000..e0ec669828cb --- /dev/null +++ b/azure-mgmt-apimanagement/azure/mgmt/apimanagement/version.py @@ -0,0 +1,13 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" + diff --git a/azure-mgmt-apimanagement/sdk_packaging.toml b/azure-mgmt-apimanagement/sdk_packaging.toml new file mode 100644 index 000000000000..1717699fe568 --- /dev/null +++ b/azure-mgmt-apimanagement/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-apimanagement" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "API Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-apimanagement/setup.cfg b/azure-mgmt-apimanagement/setup.cfg new file mode 100644 index 000000000000..3c6e79cf31da --- /dev/null +++ b/azure-mgmt-apimanagement/setup.cfg @@ -0,0 +1,2 @@ +[bdist_wheel] +universal=1 diff --git a/azure-mgmt-apimanagement/setup.py b/azure-mgmt-apimanagement/setup.py new file mode 100644 index 000000000000..37fdad48736f --- /dev/null +++ b/azure-mgmt-apimanagement/setup.py @@ -0,0 +1,88 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-mgmt-apimanagement" +PACKAGE_PPRINT_NAME = "API Management" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + long_description_content_type='text/x-rst', + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } +)