Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add API Version 2016-10-10 and Examples for Deployment Apis #1049

Merged
merged 9 commits into from
Mar 23, 2017

Conversation

solankisamir
Copy link
Member

@solankisamir solankisamir commented Mar 20, 2017

This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.

  • Added API Version 2016-10-10
  • Added Examples for Api Management Deployment REST Apis
  • Added support for AADB2C in REST API
  • Added Api to ApplyNetworkConfigurationUpdates
  • Added Api to GetNetworkStatus
  • Updated Description for Reports API fields.
  • Added support for Updated Backend Entity to support integration with ServiceFabric, Logic App etc.
  • Incorporated review feedback from earlier review Add version 2016-10-10 for api management #1039

PR information

  • The title of the PR is clear and informative.
  • There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
  • Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
  • If applicable, the PR references the bug/issue that it fixes.
  • Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

  • I have read the contribution guidelines.
  • My spec meets the review criteria:
    • The spec conforms to the Swagger 2.0 specification.
    • Validation errors from the Linter extension for VS Code have all been fixed for this spec. (Note: for large, previously checked in specs, there will likely be many errors shown. Please contact our team so we can set a timeframe for fixing these errors if your PR is not going to address them).
    • The spec follows the patterns described in the Swagger good patterns document unless the service API makes this impossible.

@solankisamir
Copy link
Member Author

@sarangan12 can you take a look?

@sarangan12
Copy link
Member

In apimanagement.json, the following errors are found:

ERROR: Operation ProductSubscriptions_ListByProduct must be one of: subscriptions_listbysubscriptionid, subscriptions_list, subscriptions_listbyresourcegroup
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
ERROR: Operation UserSubscriptions_ListByUser must be one of: subscriptions_listbysubscriptionid, subscriptions_list, subscriptions_listbyresourcegroup
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
ERROR: Operation UserIdentities_ListByUser must be one of: identities_listbysubscriptionid, identities_list, identities_listbyresourcegroup, identities_listbyusers
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/access must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/access/regeneratePrimaryKey must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/access/regenerateSecondaryKey must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/access/git must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/access/git/regeneratePrimaryKey must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/access/git/regenerateSecondaryKey must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/configuration/deploy must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/configuration/save must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/configuration/validate must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Path /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/configuration/syncState must follow the pattern Subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/namespace/typename1/{typename1type}/typename2/{typename2type}/operations
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths
WARNING: Media types other than 'application/json' has limited support
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/get/produces[2]
WARNING: Media types other than 'application/json' has limited support
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/get/produces[3]
WARNING: Media types other than 'application/json' has limited support
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/get/produces[4]
ERROR: Top level properties should be one of name, type, id, location, properties, tags, plan, sku, etag, managedBy, identity. Extra properties found: "ApiContract/serviceUrl, ApiContract/path, ApiContract/protocols, ApiUpdateContract/serviceUrl, ApiUpdateContract/path, ApiUpdateContract/protocols".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}
ERROR: Top level properties should be one of name, type, id, location, properties, tags, plan, sku, etag, managedBy, identity. Extra properties found: "OperationContract/method, OperationContract/urlTemplate, OperationUpdateContract/method, OperationUpdateContract/urlTemplate".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}
ERROR: Top level properties should be one of name, type, id, location, properties, tags, plan, sku, etag, managedBy, identity. Extra properties found: "BackendContract/url, BackendContract/protocol, BackendUpdateParameters/url, BackendUpdateParameters/protocol".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendid}
ERROR: 'GET' operation 'Apis_Export' must use method name 'Get' or Method name start with 'List'
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/x-ms-paths/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?export=true/get/operationId
WARNING: Booleans are not descriptive and make them hard to use. Instead use string enums with allowed set of values defined: 'ParameterContract/required, ProductContract/subscriptionRequired, ProductContract/approvalRequired, ProductUpdateParameters/subscriptionRequired, ProductUpdateParameters/approvalRequired, GroupContract/builtIn, OAuth2AuthorizationServerContract/supportState, OAuth2AuthorizationServerUpdateContract/supportState, RegionContract/isMasterRegion, AccessInformationContract/enabled, AccessInformationUpdateParameters/enabled, LoggerResponse/isBuffered, LoggerCreateParameters/isBuffered, LoggerUpdateParameters/isBuffered, BackendProperties/skipCertificateChainValidation, BackendProperties/skipCertificateNameValidation, PropertyContract/secret, PropertyCreateParameters/secret, PropertyUpdateParameters/secret, DeployConfigurationParameters/force, SaveConfigurationParameter/force, TenantConfigurationSyncStateContract/isExport, TenantConfigurationSyncStateContract/isSynced, TenantConfigurationSyncStateContract/isGitEnabled'.
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimanagement.json#/definitions
ERROR: Errors found during Swagger validation

@sarangan12
Copy link
Member

In apimdeployment.json, the following errors are found:

WARNING: Booleans are not descriptive and make them hard to use. Instead use string enums with allowed set of values defined: 'ApiManagementServiceNameAvailabilityResult/nameAvailable'.
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: The id, name, type, location and tags properties of the Resource must be present with id, name and type as read-only
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: Tracked Resource failing validation is: "ApiManagementServiceResource". Validation Failed: 4.
A Tracked Resource must have:
1. A Get Operation
2. A ListByResourceGroup operation with x-ms-pageable extension and
3. A ListBySubscriptionId operation with x-ms-pageable extension.
4. "type","location","tags" should not be used in the RP property bag named "properties".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: Property named: "staticIPs", for definition: "AdditionalRegion" must follow camelCase style. Example: "staticIps".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: Property named: "staticIPs", for definition: "ApiManagementServiceProperties" must follow camelCase style. Example: "staticIps".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: Property named: "redirect_uri", for definition: "ApiManagementServiceGetSsoTokenResult" must follow camelCase style. Example: "redirect_uri".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: Property named: "certificate_password", for definition: "ApiManagementServiceUploadCertificateParameters" must follow camelCase style. Example: "certificate_password".
Path: ..\azure-rest-api-specs\arm-apimanagement\2016-10-10\swagger\apimdeployment.json#/definitions
ERROR: Errors found during Swagger validation

@sarangan12
Copy link
Member

Also, there is a typo in the name apimdeployment.json

@solankisamir
Copy link
Member Author

@sarangan12 since these Error will cause a breaking change in the existing version, we will incorporate those in next version. I have opened issue #1060

@sarangan12 sarangan12 merged commit dde5294 into Azure:master Mar 23, 2017
@AutorestCI
Copy link

No modification for Ruby

@AutorestCI
Copy link

No modification for NodeJS

@AutorestCI
Copy link

No modification for Python

@mcardosos
Copy link
Contributor

Hello!
It looks like in this PR some ugly breaking changes were introduced. For example: Property_ListByService became Properties_ListByService, while there are still some other operations like Property_Get or Property_Update (so now I have operation groups Property and Properties, and Properties only has one operation). Other example: ProductApis_Add became ProductApis_Create.
I am not a big fan of this. The operation is the same but now the SDKs have a breaking change without a good reason.
Could we not have this kind of changes in the future?

cc @olydis

mccleanp pushed a commit that referenced this pull request Mar 23, 2022
* Update WANdisco Fusion swagger

- Make Migration policies an enum
- Add 202 responses for async delete
- Make response scheme for secret properties

* Add x-ms-long-running-operation-options to async deletes

* Add x-ms-long-running-operation-options for 201

* Change final-state-via to azure-async-operation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants