// +build go1.13 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. See License.txt in the project root for license information. // Code generated by Microsoft (R) AutoRest Code Generator. // Changes may cause incorrect behavior and will be lost if the code is regenerated. package armapimanagement import ( "encoding/json" "github.com/Azure/azure-sdk-for-go/sdk/azcore" "reflect" "time" ) // APIBeginCreateOrUpdateOptions contains the optional parameters for the API.BeginCreateOrUpdate method. type APIBeginCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APICollection - Paged Api list representation. type APICollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*APIContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APICollection. func (a APICollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", a.Count) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // APIContract - Api details. type APIContract struct { Resource // Api entity contract properties. Properties *APIContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIContract. func (a APIContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // APIContractProperties - Api Entity Properties type APIContractProperties struct { APIEntityBaseContract // 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. Path *string `json:"path,omitempty"` // Version set details APIVersionSet *APIVersionSetContractDetails `json:"apiVersionSet,omitempty"` // API name. Must be 1 to 300 characters long. DisplayName *string `json:"displayName,omitempty"` // Describes on which protocols the operations in this API can be invoked. Protocols []*Protocol `json:"protocols,omitempty"` // Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. ServiceURL *string `json:"serviceUrl,omitempty"` // API identifier of the source API. SourceAPIID *string `json:"sourceApiId,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIContractProperties. func (a APIContractProperties) MarshalJSON() ([]byte, error) { objectMap := a.marshalInternal() return json.Marshal(objectMap) } func (a APIContractProperties) marshalInternal() map[string]interface{} { objectMap := a.APIEntityBaseContract.marshalInternal() populate(objectMap, "apiVersionSet", a.APIVersionSet) populate(objectMap, "displayName", a.DisplayName) populate(objectMap, "path", a.Path) populate(objectMap, "protocols", a.Protocols) populate(objectMap, "serviceUrl", a.ServiceURL) populate(objectMap, "sourceApiId", a.SourceAPIID) return objectMap } // APIContractUpdateProperties - API update contract properties. type APIContractUpdateProperties struct { APIEntityBaseContract // API name. DisplayName *string `json:"displayName,omitempty"` // 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. Path *string `json:"path,omitempty"` // Describes on which protocols the operations in this API can be invoked. Protocols []*Protocol `json:"protocols,omitempty"` // Absolute URL of the backend service implementing this API. ServiceURL *string `json:"serviceUrl,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIContractUpdateProperties. func (a APIContractUpdateProperties) MarshalJSON() ([]byte, error) { objectMap := a.APIEntityBaseContract.marshalInternal() populate(objectMap, "displayName", a.DisplayName) populate(objectMap, "path", a.Path) populate(objectMap, "protocols", a.Protocols) populate(objectMap, "serviceUrl", a.ServiceURL) return json.Marshal(objectMap) } // APICreateOrUpdateParameter - API Create or Update Parameters. type APICreateOrUpdateParameter struct { // Api entity create of update properties. Properties *APICreateOrUpdateProperties `json:"properties,omitempty"` } // APICreateOrUpdateProperties - Api Create or Update Properties. type APICreateOrUpdateProperties struct { APIContractProperties // Format of the Content in which the API is getting imported. Format *ContentFormat `json:"format,omitempty"` // Type of Api to create. // * http creates a SOAP to REST API // * soap creates a SOAP pass-through API . SoapAPIType *SoapAPIType `json:"apiType,omitempty"` // Content value when Importing an API. Value *string `json:"value,omitempty"` // Criteria to limit import of WSDL to a subset of the document. WsdlSelector *APICreateOrUpdatePropertiesWsdlSelector `json:"wsdlSelector,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APICreateOrUpdateProperties. func (a APICreateOrUpdateProperties) MarshalJSON() ([]byte, error) { objectMap := a.APIContractProperties.marshalInternal() populate(objectMap, "format", a.Format) populate(objectMap, "apiType", a.SoapAPIType) populate(objectMap, "value", a.Value) populate(objectMap, "wsdlSelector", a.WsdlSelector) return json.Marshal(objectMap) } // APICreateOrUpdatePropertiesWsdlSelector - Criteria to limit import of WSDL to a subset of the document. type APICreateOrUpdatePropertiesWsdlSelector struct { // Name of endpoint(port) to import from WSDL WsdlEndpointName *string `json:"wsdlEndpointName,omitempty"` // Name of service to import from WSDL WsdlServiceName *string `json:"wsdlServiceName,omitempty"` } // APIDeleteOptions contains the optional parameters for the API.Delete method. type APIDeleteOptions struct { // Delete all revisions of the Api. DeleteRevisions *bool } // APIDiagnosticCreateOrUpdateOptions contains the optional parameters for the APIDiagnostic.CreateOrUpdate method. type APIDiagnosticCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIDiagnosticDeleteOptions contains the optional parameters for the APIDiagnostic.Delete method. type APIDiagnosticDeleteOptions struct { // placeholder for future optional parameters } // APIDiagnosticGetEntityTagOptions contains the optional parameters for the APIDiagnostic.GetEntityTag method. type APIDiagnosticGetEntityTagOptions struct { // placeholder for future optional parameters } // APIDiagnosticGetOptions contains the optional parameters for the APIDiagnostic.Get method. type APIDiagnosticGetOptions struct { // placeholder for future optional parameters } // APIDiagnosticListByServiceOptions contains the optional parameters for the APIDiagnostic.ListByService method. type APIDiagnosticListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIDiagnosticUpdateOptions contains the optional parameters for the APIDiagnostic.Update method. type APIDiagnosticUpdateOptions struct { // placeholder for future optional parameters } // APIEntityBaseContract - API base contract details. type APIEntityBaseContract struct { // Describes the Revision of the Api. If no value is provided, default revision 1 is created APIRevision *string `json:"apiRevision,omitempty"` // Description of the Api Revision. APIRevisionDescription *string `json:"apiRevisionDescription,omitempty"` // Type of API. APIType *APIType `json:"type,omitempty"` // Indicates the Version identifier of the API if the API is versioned APIVersion *string `json:"apiVersion,omitempty"` // Description of the Api Version. APIVersionDescription *string `json:"apiVersionDescription,omitempty"` // A resource identifier for the related ApiVersionSet. APIVersionSetID *string `json:"apiVersionSetId,omitempty"` // Collection of authentication settings included into this API. AuthenticationSettings *AuthenticationSettingsContract `json:"authenticationSettings,omitempty"` // Description of the API. May include HTML formatting tags. Description *string `json:"description,omitempty"` // Indicates if API revision is current api revision. IsCurrent *bool `json:"isCurrent,omitempty"` // Protocols over which API is made available. SubscriptionKeyParameterNames *SubscriptionKeyParameterNamesContract `json:"subscriptionKeyParameterNames,omitempty"` // Specifies whether an API or Product subscription is required for accessing the API. SubscriptionRequired *bool `json:"subscriptionRequired,omitempty"` // READ-ONLY; Indicates if API revision is accessible via the gateway. IsOnline *bool `json:"isOnline,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIEntityBaseContract. func (a APIEntityBaseContract) MarshalJSON() ([]byte, error) { objectMap := a.marshalInternal() return json.Marshal(objectMap) } func (a APIEntityBaseContract) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "apiRevision", a.APIRevision) populate(objectMap, "apiRevisionDescription", a.APIRevisionDescription) populate(objectMap, "type", a.APIType) populate(objectMap, "apiVersion", a.APIVersion) populate(objectMap, "apiVersionDescription", a.APIVersionDescription) populate(objectMap, "apiVersionSetId", a.APIVersionSetID) populate(objectMap, "authenticationSettings", a.AuthenticationSettings) populate(objectMap, "description", a.Description) populate(objectMap, "isCurrent", a.IsCurrent) populate(objectMap, "isOnline", a.IsOnline) populate(objectMap, "subscriptionKeyParameterNames", a.SubscriptionKeyParameterNames) populate(objectMap, "subscriptionRequired", a.SubscriptionRequired) return objectMap } // APIExportGetOptions contains the optional parameters for the APIExport.Get method. type APIExportGetOptions struct { // placeholder for future optional parameters } // APIExportResult - API Export result. type APIExportResult struct { // Format in which the Api Details are exported to the Storage Blob with Sas Key valid for 5 minutes. ExportResultFormat *ExportResultFormat `json:"format,omitempty"` // ResourceId of the API which was exported. ID *string `json:"id,omitempty"` // The object defining the schema of the exported Api Detail Value *APIExportResultValue `json:"value,omitempty"` } // APIExportResultValue - The object defining the schema of the exported Api Detail type APIExportResultValue struct { // Link to the Storage Blob containing the result of the export operation. The Blob Uri is only valid for 5 minutes. Link *string `json:"link,omitempty"` } // APIGetEntityTagOptions contains the optional parameters for the API.GetEntityTag method. type APIGetEntityTagOptions struct { // placeholder for future optional parameters } // APIGetOptions contains the optional parameters for the API.Get method. type APIGetOptions struct { // placeholder for future optional parameters } // APIIssueAttachmentCreateOrUpdateOptions contains the optional parameters for the APIIssueAttachment.CreateOrUpdate method. type APIIssueAttachmentCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIIssueAttachmentDeleteOptions contains the optional parameters for the APIIssueAttachment.Delete method. type APIIssueAttachmentDeleteOptions struct { // placeholder for future optional parameters } // APIIssueAttachmentGetEntityTagOptions contains the optional parameters for the APIIssueAttachment.GetEntityTag method. type APIIssueAttachmentGetEntityTagOptions struct { // placeholder for future optional parameters } // APIIssueAttachmentGetOptions contains the optional parameters for the APIIssueAttachment.Get method. type APIIssueAttachmentGetOptions struct { // placeholder for future optional parameters } // APIIssueAttachmentListByServiceOptions contains the optional parameters for the APIIssueAttachment.ListByService method. type APIIssueAttachmentListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIIssueCommentCreateOrUpdateOptions contains the optional parameters for the APIIssueComment.CreateOrUpdate method. type APIIssueCommentCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIIssueCommentDeleteOptions contains the optional parameters for the APIIssueComment.Delete method. type APIIssueCommentDeleteOptions struct { // placeholder for future optional parameters } // APIIssueCommentGetEntityTagOptions contains the optional parameters for the APIIssueComment.GetEntityTag method. type APIIssueCommentGetEntityTagOptions struct { // placeholder for future optional parameters } // APIIssueCommentGetOptions contains the optional parameters for the APIIssueComment.Get method. type APIIssueCommentGetOptions struct { // placeholder for future optional parameters } // APIIssueCommentListByServiceOptions contains the optional parameters for the APIIssueComment.ListByService method. type APIIssueCommentListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIIssueCreateOrUpdateOptions contains the optional parameters for the APIIssue.CreateOrUpdate method. type APIIssueCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIIssueDeleteOptions contains the optional parameters for the APIIssue.Delete method. type APIIssueDeleteOptions struct { // placeholder for future optional parameters } // APIIssueGetEntityTagOptions contains the optional parameters for the APIIssue.GetEntityTag method. type APIIssueGetEntityTagOptions struct { // placeholder for future optional parameters } // APIIssueGetOptions contains the optional parameters for the APIIssue.Get method. type APIIssueGetOptions struct { // Expand the comment attachments. ExpandCommentsAttachments *bool } // APIIssueListByServiceOptions contains the optional parameters for the APIIssue.ListByService method. type APIIssueListByServiceOptions struct { // Expand the comment attachments. ExpandCommentsAttachments *bool // | 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 | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIIssueUpdateOptions contains the optional parameters for the APIIssue.Update method. type APIIssueUpdateOptions struct { // placeholder for future optional parameters } // APIListByServiceOptions contains the optional parameters for the API.ListByService method. type APIListByServiceOptions struct { // Include full ApiVersionSet resource in response ExpandAPIVersionSet *bool // | 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 // |
| isCurrent | filter | eq, ne | |
Filter *string // Number of records to skip. Skip *int32 // Include tags in the response. Tags *string // Number of records to return. Top *int32 } // APIListByTagsOptions contains the optional parameters for the API.ListByTags method. type APIListByTagsOptions struct { // | 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 |
| 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 |
| isCurrent | filter | eq | |
Filter *string // Include not tagged APIs. IncludeNotTaggedApis *bool // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIManagementOperationsListOptions contains the optional parameters for the APIManagementOperations.List method. type APIManagementOperationsListOptions struct { // placeholder for future optional parameters } // APIManagementSKU - Describes an available ApiManagement SKU. type APIManagementSKU struct { // READ-ONLY; The api versions that support this SKU. APIVersions []*string `json:"apiVersions,omitempty" azure:"ro"` // READ-ONLY; A name value pair to describe the capability. Capabilities []*APIManagementSKUCapabilities `json:"capabilities,omitempty" azure:"ro"` // READ-ONLY; Specifies the number of virtual machines in the scale set. Capacity *APIManagementSKUCapacity `json:"capacity,omitempty" azure:"ro"` // READ-ONLY; Metadata for retrieving price info. Costs []*APIManagementSKUCosts `json:"costs,omitempty" azure:"ro"` // READ-ONLY; The Family of this particular SKU. Family *string `json:"family,omitempty" azure:"ro"` // READ-ONLY; The Kind of resources that are supported in this SKU. Kind *string `json:"kind,omitempty" azure:"ro"` // READ-ONLY; A list of locations and availability zones in those locations where the SKU is available. LocationInfo []*APIManagementSKULocationInfo `json:"locationInfo,omitempty" azure:"ro"` // READ-ONLY; The set of locations that the SKU is available. Locations []*string `json:"locations,omitempty" azure:"ro"` // READ-ONLY; The name of SKU. Name *string `json:"name,omitempty" azure:"ro"` // READ-ONLY; The type of resource the SKU applies to. ResourceType *string `json:"resourceType,omitempty" azure:"ro"` // READ-ONLY; The restrictions because of which SKU cannot be used. This is empty if there are no restrictions. Restrictions []*APIManagementSKURestrictions `json:"restrictions,omitempty" azure:"ro"` // READ-ONLY; The Size of the SKU. Size *string `json:"size,omitempty" azure:"ro"` // READ-ONLY; Specifies the tier of virtual machines in a scale set. // Possible Values: // Standard // Basic Tier *string `json:"tier,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementSKU. func (a APIManagementSKU) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "apiVersions", a.APIVersions) populate(objectMap, "capabilities", a.Capabilities) populate(objectMap, "capacity", a.Capacity) populate(objectMap, "costs", a.Costs) populate(objectMap, "family", a.Family) populate(objectMap, "kind", a.Kind) populate(objectMap, "locationInfo", a.LocationInfo) populate(objectMap, "locations", a.Locations) populate(objectMap, "name", a.Name) populate(objectMap, "resourceType", a.ResourceType) populate(objectMap, "restrictions", a.Restrictions) populate(objectMap, "size", a.Size) populate(objectMap, "tier", a.Tier) return json.Marshal(objectMap) } // APIManagementSKUCapabilities - Describes The SKU capabilities object. type APIManagementSKUCapabilities struct { // READ-ONLY; An invariant to describe the feature. Name *string `json:"name,omitempty" azure:"ro"` // READ-ONLY; An invariant if the feature is measured by quantity. Value *string `json:"value,omitempty" azure:"ro"` } // APIManagementSKUCapacity - Describes scaling information of a SKU. type APIManagementSKUCapacity struct { // READ-ONLY; The default capacity. Default *int32 `json:"default,omitempty" azure:"ro"` // READ-ONLY; The maximum capacity that can be set. Maximum *int32 `json:"maximum,omitempty" azure:"ro"` // READ-ONLY; The minimum capacity. Minimum *int32 `json:"minimum,omitempty" azure:"ro"` // READ-ONLY; The scale type applicable to the sku. ScaleType *APIManagementSKUCapacityScaleType `json:"scaleType,omitempty" azure:"ro"` } // APIManagementSKUCosts - Describes metadata for retrieving price info. type APIManagementSKUCosts struct { // READ-ONLY; An invariant to show the extended unit. ExtendedUnit *string `json:"extendedUnit,omitempty" azure:"ro"` // READ-ONLY; Used for querying price from commerce. MeterID *string `json:"meterID,omitempty" azure:"ro"` // READ-ONLY; The multiplier is needed to extend the base metered cost. Quantity *int64 `json:"quantity,omitempty" azure:"ro"` } type APIManagementSKULocationInfo struct { // READ-ONLY; Location of the SKU Location *string `json:"location,omitempty" azure:"ro"` // READ-ONLY; Details of capabilities available to a SKU in specific zones. ZoneDetails []*APIManagementSKUZoneDetails `json:"zoneDetails,omitempty" azure:"ro"` // READ-ONLY; List of availability zones where the SKU is supported. Zones []*string `json:"zones,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementSKULocationInfo. func (a APIManagementSKULocationInfo) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "location", a.Location) populate(objectMap, "zoneDetails", a.ZoneDetails) populate(objectMap, "zones", a.Zones) return json.Marshal(objectMap) } type APIManagementSKURestrictionInfo struct { // READ-ONLY; Locations where the SKU is restricted Locations []*string `json:"locations,omitempty" azure:"ro"` // READ-ONLY; List of availability zones where the SKU is restricted. Zones []*string `json:"zones,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementSKURestrictionInfo. func (a APIManagementSKURestrictionInfo) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "locations", a.Locations) populate(objectMap, "zones", a.Zones) return json.Marshal(objectMap) } // APIManagementSKURestrictions - Describes scaling information of a SKU. type APIManagementSKURestrictions struct { // READ-ONLY; The reason for restriction. ReasonCode *APIManagementSKURestrictionsReasonCode `json:"reasonCode,omitempty" azure:"ro"` // READ-ONLY; The information about the restriction where the SKU cannot be used. RestrictionInfo *APIManagementSKURestrictionInfo `json:"restrictionInfo,omitempty" azure:"ro"` // READ-ONLY; The type of restrictions. Type *APIManagementSKURestrictionsType `json:"type,omitempty" azure:"ro"` // READ-ONLY; The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted. Values []*string `json:"values,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementSKURestrictions. func (a APIManagementSKURestrictions) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "reasonCode", a.ReasonCode) populate(objectMap, "restrictionInfo", a.RestrictionInfo) populate(objectMap, "type", a.Type) populate(objectMap, "values", a.Values) return json.Marshal(objectMap) } // APIManagementSKUZoneDetails - Describes The zonal capabilities of a SKU. type APIManagementSKUZoneDetails struct { // READ-ONLY; A list of capabilities that are available for the SKU in the specified list of zones. Capabilities []*APIManagementSKUCapabilities `json:"capabilities,omitempty" azure:"ro"` // READ-ONLY; The set of zones that the SKU is available in with the specified capabilities. Name []*string `json:"name,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementSKUZoneDetails. func (a APIManagementSKUZoneDetails) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "capabilities", a.Capabilities) populate(objectMap, "name", a.Name) return json.Marshal(objectMap) } // APIManagementSKUsListOptions contains the optional parameters for the APIManagementSKUs.List method. type APIManagementSKUsListOptions struct { // placeholder for future optional parameters } // APIManagementSKUsResult - The List Resource Skus operation response. type APIManagementSKUsResult struct { // REQUIRED; The list of skus available for the subscription. Value []*APIManagementSKU `json:"value,omitempty"` // READ-ONLY; The URI to fetch the next page of Resource Skus. Call ListNext() with this URI to fetch the next page of Resource Skus NextLink *string `json:"nextLink,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementSKUsResult. func (a APIManagementSKUsResult) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // APIManagementServiceApplyNetworkConfigurationParameters - Parameter supplied to the Apply Network configuration operation. type APIManagementServiceApplyNetworkConfigurationParameters struct { // 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. Location *string `json:"location,omitempty"` } // APIManagementServiceBackupRestoreParameters - Parameters supplied to the Backup/Restore of an API Management service operation. type APIManagementServiceBackupRestoreParameters struct { // REQUIRED; Azure Cloud Storage account (used to place/retrieve the backup) access key. AccessKey *string `json:"accessKey,omitempty"` // REQUIRED; The name of the backup file to create. BackupName *string `json:"backupName,omitempty"` // REQUIRED; Azure Cloud Storage blob container name used to place/retrieve the backup. ContainerName *string `json:"containerName,omitempty"` // REQUIRED; Azure Cloud Storage account (used to place/retrieve the backup) name. StorageAccount *string `json:"storageAccount,omitempty"` } // APIManagementServiceBaseProperties - Base Properties of an API Management service resource description. type APIManagementServiceBaseProperties struct { // Control Plane Apis version constraint for the API Management service. APIVersionConstraint *APIVersionConstraint `json:"apiVersionConstraint,omitempty"` // Additional datacenter locations of the API Management service. AdditionalLocations []*AdditionalLocation `json:"additionalLocations,omitempty"` // List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. Certificates []*CertificateConfiguration `json:"certificates,omitempty"` // Custom properties of the API Management service. // Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 will disable the cipher TLSRSAWITH3DESEDECBCSHA 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. // Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 can be used to disable TLS 1.0 on an API Management service. // Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 can be used to disable just TLS 1.1 for communications with backends. // Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 can be used to disable TLS 1.0 for communications with backends. // Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 can be used to enable HTTP2 protocol on an API Management service. // Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 // the default value is True if the service was // created on or before April 1st 2018 and False otherwise. Http2 setting's default value is False. // You can disable any of next ciphers by using settings Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLSECDHEECDSAWITHAES256CBCSHA, // TLSECDHEECDSAWITHAES128CBCSHA, TLS // ECDHERSAWITHAES256CBCSHA, TLSECDHERSAWITHAES128CBCSHA, TLSRSAWITHAES128GCMSHA256, TLSRSAWITHAES256CBCSHA256, TLSRSAWITHAES128CBCSHA256, TLSRSAWITHAES256CBCSHA, // TLSRSAWITHAES128CBCSHA. For example, // Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. The default value is true for them. Note: next ciphers // can't be disabled since they are required by // Azure CloudService internal components: TLSECDHEECDSAWITHAES256GCMSHA384,TLSECDHEECDSAWITHAES128GCMSHA256,TLSECDHERSAWITHAES256GCMSHA384,TLSECDHERSAWITHAES128GCMSHA256,TLSECDHEECDSAWITHAES256CBC // SHA384,TLSECDHEECDSAWITHAES128CBCSHA256,TLSECDHERSAWITHAES256CBCSHA384,TLSECDHERSAWITHAES128CBCSHA256,TLSRSAWITHAES256GCMSHA384 CustomProperties map[string]*string `json:"customProperties,omitempty"` // Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. DisableGateway *bool `json:"disableGateway,omitempty"` // 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. EnableClientCertificate *bool `json:"enableClientCertificate,omitempty"` // Custom hostname configuration of the API Management service. HostnameConfigurations []*HostnameConfiguration `json:"hostnameConfigurations,omitempty"` // Email address from which the notification will be sent. NotificationSenderEmail *string `json:"notificationSenderEmail,omitempty"` // Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. Restore *bool `json:"restore,omitempty"` // Virtual network configuration of the API Management service. VirtualNetworkConfiguration *VirtualNetworkConfiguration `json:"virtualNetworkConfiguration,omitempty"` // 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. VirtualNetworkType *VirtualNetworkType `json:"virtualNetworkType,omitempty"` // READ-ONLY; 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. CreatedAtUTC *time.Time `json:"createdAtUtc,omitempty" azure:"ro"` // READ-ONLY; DEveloper Portal endpoint URL of the API Management service. DeveloperPortalURL *string `json:"developerPortalUrl,omitempty" azure:"ro"` // READ-ONLY; Gateway URL of the API Management service in the Default Region. GatewayRegionalURL *string `json:"gatewayRegionalUrl,omitempty" azure:"ro"` // READ-ONLY; Gateway URL of the API Management service. GatewayURL *string `json:"gatewayUrl,omitempty" azure:"ro"` // READ-ONLY; Management API endpoint URL of the API Management service. ManagementAPIURL *string `json:"managementApiUrl,omitempty" azure:"ro"` // READ-ONLY; Publisher portal endpoint Url of the API Management service. PortalURL *string `json:"portalUrl,omitempty" azure:"ro"` // READ-ONLY; 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, Premium and Isolated // SKU. PrivateIPAddresses []*string `json:"privateIPAddresses,omitempty" azure:"ro"` // READ-ONLY; 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. ProvisioningState *string `json:"provisioningState,omitempty" azure:"ro"` // READ-ONLY; Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and // Isolated SKU. PublicIPAddresses []*string `json:"publicIPAddresses,omitempty" azure:"ro"` // READ-ONLY; SCM endpoint URL of the API Management service. ScmURL *string `json:"scmUrl,omitempty" azure:"ro"` // READ-ONLY; The provisioning state of the API Management service, which is targeted by the long running operation started on the service. TargetProvisioningState *string `json:"targetProvisioningState,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceBaseProperties. func (a APIManagementServiceBaseProperties) MarshalJSON() ([]byte, error) { objectMap := a.marshalInternal() return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type APIManagementServiceBaseProperties. func (a *APIManagementServiceBaseProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } return a.unmarshalInternal(rawMsg) } func (a APIManagementServiceBaseProperties) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "apiVersionConstraint", a.APIVersionConstraint) populate(objectMap, "additionalLocations", a.AdditionalLocations) populate(objectMap, "certificates", a.Certificates) populate(objectMap, "createdAtUtc", (*timeRFC3339)(a.CreatedAtUTC)) populate(objectMap, "customProperties", a.CustomProperties) populate(objectMap, "developerPortalUrl", a.DeveloperPortalURL) populate(objectMap, "disableGateway", a.DisableGateway) populate(objectMap, "enableClientCertificate", a.EnableClientCertificate) populate(objectMap, "gatewayRegionalUrl", a.GatewayRegionalURL) populate(objectMap, "gatewayUrl", a.GatewayURL) populate(objectMap, "hostnameConfigurations", a.HostnameConfigurations) populate(objectMap, "managementApiUrl", a.ManagementAPIURL) populate(objectMap, "notificationSenderEmail", a.NotificationSenderEmail) populate(objectMap, "portalUrl", a.PortalURL) populate(objectMap, "privateIPAddresses", a.PrivateIPAddresses) populate(objectMap, "provisioningState", a.ProvisioningState) populate(objectMap, "publicIPAddresses", a.PublicIPAddresses) populate(objectMap, "restore", a.Restore) populate(objectMap, "scmUrl", a.ScmURL) populate(objectMap, "targetProvisioningState", a.TargetProvisioningState) populate(objectMap, "virtualNetworkConfiguration", a.VirtualNetworkConfiguration) populate(objectMap, "virtualNetworkType", a.VirtualNetworkType) return objectMap } func (a *APIManagementServiceBaseProperties) unmarshalInternal(rawMsg map[string]json.RawMessage) error { for key, val := range rawMsg { var err error switch key { case "apiVersionConstraint": err = unpopulate(val, &a.APIVersionConstraint) delete(rawMsg, key) case "additionalLocations": err = unpopulate(val, &a.AdditionalLocations) delete(rawMsg, key) case "certificates": err = unpopulate(val, &a.Certificates) delete(rawMsg, key) case "createdAtUtc": var aux timeRFC3339 err = unpopulate(val, &aux) a.CreatedAtUTC = (*time.Time)(&aux) delete(rawMsg, key) case "customProperties": err = unpopulate(val, &a.CustomProperties) delete(rawMsg, key) case "developerPortalUrl": err = unpopulate(val, &a.DeveloperPortalURL) delete(rawMsg, key) case "disableGateway": err = unpopulate(val, &a.DisableGateway) delete(rawMsg, key) case "enableClientCertificate": err = unpopulate(val, &a.EnableClientCertificate) delete(rawMsg, key) case "gatewayRegionalUrl": err = unpopulate(val, &a.GatewayRegionalURL) delete(rawMsg, key) case "gatewayUrl": err = unpopulate(val, &a.GatewayURL) delete(rawMsg, key) case "hostnameConfigurations": err = unpopulate(val, &a.HostnameConfigurations) delete(rawMsg, key) case "managementApiUrl": err = unpopulate(val, &a.ManagementAPIURL) delete(rawMsg, key) case "notificationSenderEmail": err = unpopulate(val, &a.NotificationSenderEmail) delete(rawMsg, key) case "portalUrl": err = unpopulate(val, &a.PortalURL) delete(rawMsg, key) case "privateIPAddresses": err = unpopulate(val, &a.PrivateIPAddresses) delete(rawMsg, key) case "provisioningState": err = unpopulate(val, &a.ProvisioningState) delete(rawMsg, key) case "publicIPAddresses": err = unpopulate(val, &a.PublicIPAddresses) delete(rawMsg, key) case "restore": err = unpopulate(val, &a.Restore) delete(rawMsg, key) case "scmUrl": err = unpopulate(val, &a.ScmURL) delete(rawMsg, key) case "targetProvisioningState": err = unpopulate(val, &a.TargetProvisioningState) delete(rawMsg, key) case "virtualNetworkConfiguration": err = unpopulate(val, &a.VirtualNetworkConfiguration) delete(rawMsg, key) case "virtualNetworkType": err = unpopulate(val, &a.VirtualNetworkType) delete(rawMsg, key) } if err != nil { return err } } return nil } // APIManagementServiceBeginApplyNetworkConfigurationUpdatesOptions contains the optional parameters for the APIManagementService.BeginApplyNetworkConfigurationUpdates // method. type APIManagementServiceBeginApplyNetworkConfigurationUpdatesOptions struct { // Parameters supplied to the Apply Network Configuration operation. If the parameters are empty, all the regions in which the Api Management service is // deployed will be updated sequentially without incurring downtime in the region. Parameters *APIManagementServiceApplyNetworkConfigurationParameters } // APIManagementServiceBeginBackupOptions contains the optional parameters for the APIManagementService.BeginBackup method. type APIManagementServiceBeginBackupOptions struct { // placeholder for future optional parameters } // APIManagementServiceBeginCreateOrUpdateOptions contains the optional parameters for the APIManagementService.BeginCreateOrUpdate method. type APIManagementServiceBeginCreateOrUpdateOptions struct { // placeholder for future optional parameters } // APIManagementServiceBeginDeleteOptions contains the optional parameters for the APIManagementService.BeginDelete method. type APIManagementServiceBeginDeleteOptions struct { // placeholder for future optional parameters } // APIManagementServiceBeginRestoreOptions contains the optional parameters for the APIManagementService.BeginRestore method. type APIManagementServiceBeginRestoreOptions struct { // placeholder for future optional parameters } // APIManagementServiceBeginUpdateOptions contains the optional parameters for the APIManagementService.BeginUpdate method. type APIManagementServiceBeginUpdateOptions struct { // placeholder for future optional parameters } // APIManagementServiceCheckNameAvailabilityOptions contains the optional parameters for the APIManagementService.CheckNameAvailability method. type APIManagementServiceCheckNameAvailabilityOptions struct { // placeholder for future optional parameters } // APIManagementServiceCheckNameAvailabilityParameters - Parameters supplied to the CheckNameAvailability operation. type APIManagementServiceCheckNameAvailabilityParameters struct { // REQUIRED; The name to check for availability. Name *string `json:"name,omitempty"` } // APIManagementServiceGetDomainOwnershipIdentifierOptions contains the optional parameters for the APIManagementService.GetDomainOwnershipIdentifier method. type APIManagementServiceGetDomainOwnershipIdentifierOptions struct { // placeholder for future optional parameters } // APIManagementServiceGetDomainOwnershipIdentifierResult - Response of the GetDomainOwnershipIdentifier operation. type APIManagementServiceGetDomainOwnershipIdentifierResult struct { // READ-ONLY; The domain ownership identifier value. DomainOwnershipIdentifier *string `json:"domainOwnershipIdentifier,omitempty" azure:"ro"` } // APIManagementServiceGetOptions contains the optional parameters for the APIManagementService.Get method. type APIManagementServiceGetOptions struct { // placeholder for future optional parameters } // APIManagementServiceGetSsoTokenOptions contains the optional parameters for the APIManagementService.GetSsoToken method. type APIManagementServiceGetSsoTokenOptions struct { // placeholder for future optional parameters } // APIManagementServiceGetSsoTokenResult - The response of the GetSsoToken operation. type APIManagementServiceGetSsoTokenResult struct { // Redirect URL to the Publisher Portal containing the SSO token. RedirectURI *string `json:"redirectUri,omitempty"` } // APIManagementServiceIdentity - Identity properties of the Api Management service resource. type APIManagementServiceIdentity struct { // REQUIRED; The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set // of user assigned identities. The type 'None' will remove any // identities from the service. Type *ApimIdentityType `json:"type,omitempty"` // The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: // '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/ providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. UserAssignedIdentities map[string]*UserIdentityProperties `json:"userAssignedIdentities,omitempty"` // READ-ONLY; The principal id of the identity. PrincipalID *string `json:"principalId,omitempty" azure:"ro"` // READ-ONLY; The client tenant id of the identity. TenantID *string `json:"tenantId,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceIdentity. func (a APIManagementServiceIdentity) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "principalId", a.PrincipalID) populate(objectMap, "tenantId", a.TenantID) populate(objectMap, "type", a.Type) populate(objectMap, "userAssignedIdentities", a.UserAssignedIdentities) return json.Marshal(objectMap) } // APIManagementServiceListByResourceGroupOptions contains the optional parameters for the APIManagementService.ListByResourceGroup method. type APIManagementServiceListByResourceGroupOptions struct { // placeholder for future optional parameters } // APIManagementServiceListOptions contains the optional parameters for the APIManagementService.List method. type APIManagementServiceListOptions struct { // placeholder for future optional parameters } // APIManagementServiceListResult - The response of the List API Management services operation. type APIManagementServiceListResult struct { // REQUIRED; Result of the List API Management services operation. Value []*APIManagementServiceResource `json:"value,omitempty"` // Link to the next set of results. Not empty if Value contains incomplete list of API Management services. NextLink *string `json:"nextLink,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceListResult. func (a APIManagementServiceListResult) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // APIManagementServiceNameAvailabilityResult - Response of the CheckNameAvailability operation. type APIManagementServiceNameAvailabilityResult struct { // 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. Reason *NameAvailabilityReason `json:"reason,omitempty"` // READ-ONLY; 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. Message *string `json:"message,omitempty" azure:"ro"` // READ-ONLY; True if the name is available and can be used to create a new API Management service; otherwise false. NameAvailable *bool `json:"nameAvailable,omitempty" azure:"ro"` } // APIManagementServiceProperties - Properties of an API Management service resource description. type APIManagementServiceProperties struct { APIManagementServiceBaseProperties // REQUIRED; Publisher email. PublisherEmail *string `json:"publisherEmail,omitempty"` // REQUIRED; Publisher name. PublisherName *string `json:"publisherName,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceProperties. func (a APIManagementServiceProperties) MarshalJSON() ([]byte, error) { objectMap := a.APIManagementServiceBaseProperties.marshalInternal() populate(objectMap, "publisherEmail", a.PublisherEmail) populate(objectMap, "publisherName", a.PublisherName) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type APIManagementServiceProperties. func (a *APIManagementServiceProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "publisherEmail": err = unpopulate(val, &a.PublisherEmail) delete(rawMsg, key) case "publisherName": err = unpopulate(val, &a.PublisherName) delete(rawMsg, key) } if err != nil { return err } } return a.APIManagementServiceBaseProperties.unmarshalInternal(rawMsg) } // APIManagementServiceResource - A single API Management service resource in List or Get response. type APIManagementServiceResource struct { ApimResource // REQUIRED; Resource location. Location *string `json:"location,omitempty"` // REQUIRED; Properties of the API Management service. Properties *APIManagementServiceProperties `json:"properties,omitempty"` // REQUIRED; SKU properties of the API Management service. SKU *APIManagementServiceSKUProperties `json:"sku,omitempty"` // Managed service identity of the Api Management service. Identity *APIManagementServiceIdentity `json:"identity,omitempty"` // A list of availability zones denoting where the resource needs to come from. Zones []*string `json:"zones,omitempty"` // READ-ONLY; ETag of the resource. Etag *string `json:"etag,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceResource. func (a APIManagementServiceResource) MarshalJSON() ([]byte, error) { objectMap := a.ApimResource.marshalInternal() populate(objectMap, "etag", a.Etag) populate(objectMap, "identity", a.Identity) populate(objectMap, "location", a.Location) populate(objectMap, "properties", a.Properties) populate(objectMap, "sku", a.SKU) populate(objectMap, "zones", a.Zones) return json.Marshal(objectMap) } // APIManagementServiceSKUProperties - API Management service resource SKU properties. type APIManagementServiceSKUProperties struct { // REQUIRED; Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0. Capacity *int32 `json:"capacity,omitempty"` // REQUIRED; Name of the Sku. Name *SKUType `json:"name,omitempty"` } // APIManagementServiceSKUsListAvailableServiceSKUsOptions contains the optional parameters for the APIManagementServiceSKUs.ListAvailableServiceSKUs method. type APIManagementServiceSKUsListAvailableServiceSKUsOptions struct { // placeholder for future optional parameters } // APIManagementServiceUpdateParameters - Parameter supplied to Update Api Management Service. type APIManagementServiceUpdateParameters struct { ApimResource // Managed service identity of the Api Management service. Identity *APIManagementServiceIdentity `json:"identity,omitempty"` // Properties of the API Management service. Properties *APIManagementServiceUpdateProperties `json:"properties,omitempty"` // SKU properties of the API Management service. SKU *APIManagementServiceSKUProperties `json:"sku,omitempty"` // READ-ONLY; ETag of the resource. Etag *string `json:"etag,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceUpdateParameters. func (a APIManagementServiceUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := a.ApimResource.marshalInternal() populate(objectMap, "etag", a.Etag) populate(objectMap, "identity", a.Identity) populate(objectMap, "properties", a.Properties) populate(objectMap, "sku", a.SKU) return json.Marshal(objectMap) } // APIManagementServiceUpdateProperties - Properties of an API Management service resource description. type APIManagementServiceUpdateProperties struct { APIManagementServiceBaseProperties // Publisher email. PublisherEmail *string `json:"publisherEmail,omitempty"` // Publisher name. PublisherName *string `json:"publisherName,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIManagementServiceUpdateProperties. func (a APIManagementServiceUpdateProperties) MarshalJSON() ([]byte, error) { objectMap := a.APIManagementServiceBaseProperties.marshalInternal() populate(objectMap, "publisherEmail", a.PublisherEmail) populate(objectMap, "publisherName", a.PublisherName) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type APIManagementServiceUpdateProperties. func (a *APIManagementServiceUpdateProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "publisherEmail": err = unpopulate(val, &a.PublisherEmail) delete(rawMsg, key) case "publisherName": err = unpopulate(val, &a.PublisherName) delete(rawMsg, key) } if err != nil { return err } } return a.APIManagementServiceBaseProperties.unmarshalInternal(rawMsg) } // APIOperationCreateOrUpdateOptions contains the optional parameters for the APIOperation.CreateOrUpdate method. type APIOperationCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIOperationDeleteOptions contains the optional parameters for the APIOperation.Delete method. type APIOperationDeleteOptions struct { // placeholder for future optional parameters } // APIOperationGetEntityTagOptions contains the optional parameters for the APIOperation.GetEntityTag method. type APIOperationGetEntityTagOptions struct { // placeholder for future optional parameters } // APIOperationGetOptions contains the optional parameters for the APIOperation.Get method. type APIOperationGetOptions struct { // placeholder for future optional parameters } // APIOperationListByAPIOptions contains the optional parameters for the APIOperation.ListByAPI method. type APIOperationListByAPIOptions struct { // | 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 // |
Filter *string // Number of records to skip. Skip *int32 // Include tags in the response. Tags *string // Number of records to return. Top *int32 } // APIOperationPolicyCreateOrUpdateOptions contains the optional parameters for the APIOperationPolicy.CreateOrUpdate method. type APIOperationPolicyCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIOperationPolicyDeleteOptions contains the optional parameters for the APIOperationPolicy.Delete method. type APIOperationPolicyDeleteOptions struct { // placeholder for future optional parameters } // APIOperationPolicyGetEntityTagOptions contains the optional parameters for the APIOperationPolicy.GetEntityTag method. type APIOperationPolicyGetEntityTagOptions struct { // placeholder for future optional parameters } // APIOperationPolicyGetOptions contains the optional parameters for the APIOperationPolicy.Get method. type APIOperationPolicyGetOptions struct { // Policy Export Format. Format *PolicyExportFormat } // APIOperationPolicyListByOperationOptions contains the optional parameters for the APIOperationPolicy.ListByOperation method. type APIOperationPolicyListByOperationOptions struct { // placeholder for future optional parameters } // APIOperationUpdateOptions contains the optional parameters for the APIOperation.Update method. type APIOperationUpdateOptions struct { // placeholder for future optional parameters } // APIPolicyCreateOrUpdateOptions contains the optional parameters for the APIPolicy.CreateOrUpdate method. type APIPolicyCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIPolicyDeleteOptions contains the optional parameters for the APIPolicy.Delete method. type APIPolicyDeleteOptions struct { // placeholder for future optional parameters } // APIPolicyGetEntityTagOptions contains the optional parameters for the APIPolicy.GetEntityTag method. type APIPolicyGetEntityTagOptions struct { // placeholder for future optional parameters } // APIPolicyGetOptions contains the optional parameters for the APIPolicy.Get method. type APIPolicyGetOptions struct { // Policy Export Format. Format *PolicyExportFormat } // APIPolicyListByAPIOptions contains the optional parameters for the APIPolicy.ListByAPI method. type APIPolicyListByAPIOptions struct { // placeholder for future optional parameters } // APIProductListByApisOptions contains the optional parameters for the APIProduct.ListByApis method. type APIProductListByApisOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter // | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIReleaseCollection - Paged ApiRelease list representation. type APIReleaseCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*APIReleaseContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIReleaseCollection. func (a APIReleaseCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", a.Count) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // APIReleaseContract - ApiRelease details. type APIReleaseContract struct { Resource // ApiRelease entity contract properties. Properties *APIReleaseContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIReleaseContract. func (a APIReleaseContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // APIReleaseContractProperties - API Release details type APIReleaseContractProperties struct { // Identifier of the API the release belongs to. APIID *string `json:"apiId,omitempty"` // Release Notes Notes *string `json:"notes,omitempty"` // READ-ONLY; 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. CreatedDateTime *time.Time `json:"createdDateTime,omitempty" azure:"ro"` // READ-ONLY; The time the API release was updated. UpdatedDateTime *time.Time `json:"updatedDateTime,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIReleaseContractProperties. func (a APIReleaseContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "apiId", a.APIID) populate(objectMap, "createdDateTime", (*timeRFC3339)(a.CreatedDateTime)) populate(objectMap, "notes", a.Notes) populate(objectMap, "updatedDateTime", (*timeRFC3339)(a.UpdatedDateTime)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type APIReleaseContractProperties. func (a *APIReleaseContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "apiId": err = unpopulate(val, &a.APIID) delete(rawMsg, key) case "createdDateTime": var aux timeRFC3339 err = unpopulate(val, &aux) a.CreatedDateTime = (*time.Time)(&aux) delete(rawMsg, key) case "notes": err = unpopulate(val, &a.Notes) delete(rawMsg, key) case "updatedDateTime": var aux timeRFC3339 err = unpopulate(val, &aux) a.UpdatedDateTime = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return nil } // APIReleaseCreateOrUpdateOptions contains the optional parameters for the APIRelease.CreateOrUpdate method. type APIReleaseCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIReleaseDeleteOptions contains the optional parameters for the APIRelease.Delete method. type APIReleaseDeleteOptions struct { // placeholder for future optional parameters } // APIReleaseGetEntityTagOptions contains the optional parameters for the APIRelease.GetEntityTag method. type APIReleaseGetEntityTagOptions struct { // placeholder for future optional parameters } // APIReleaseGetOptions contains the optional parameters for the APIRelease.Get method. type APIReleaseGetOptions struct { // placeholder for future optional parameters } // APIReleaseListByServiceOptions contains the optional parameters for the APIRelease.ListByService method. type APIReleaseListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| notes | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIReleaseUpdateOptions contains the optional parameters for the APIRelease.Update method. type APIReleaseUpdateOptions struct { // placeholder for future optional parameters } // APIRevisionCollection - Paged Api Revision list representation. type APIRevisionCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*APIRevisionContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIRevisionCollection. func (a APIRevisionCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", a.Count) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // APIRevisionContract - Summary of revision metadata. type APIRevisionContract struct { // READ-ONLY; Identifier of the API Revision. APIID *string `json:"apiId,omitempty" azure:"ro"` // READ-ONLY; Revision number of API. APIRevision *string `json:"apiRevision,omitempty" azure:"ro"` // READ-ONLY; 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. CreatedDateTime *time.Time `json:"createdDateTime,omitempty" azure:"ro"` // READ-ONLY; Description of the API Revision. Description *string `json:"description,omitempty" azure:"ro"` // READ-ONLY; Indicates if API revision is accessible via the gateway. IsCurrent *bool `json:"isCurrent,omitempty" azure:"ro"` // READ-ONLY; Indicates if API revision is the current api revision. IsOnline *bool `json:"isOnline,omitempty" azure:"ro"` // READ-ONLY; Gateway URL for accessing the non-current API Revision. PrivateURL *string `json:"privateUrl,omitempty" azure:"ro"` // READ-ONLY; 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. UpdatedDateTime *time.Time `json:"updatedDateTime,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type APIRevisionContract. func (a APIRevisionContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "apiId", a.APIID) populate(objectMap, "apiRevision", a.APIRevision) populate(objectMap, "createdDateTime", (*timeRFC3339)(a.CreatedDateTime)) populate(objectMap, "description", a.Description) populate(objectMap, "isCurrent", a.IsCurrent) populate(objectMap, "isOnline", a.IsOnline) populate(objectMap, "privateUrl", a.PrivateURL) populate(objectMap, "updatedDateTime", (*timeRFC3339)(a.UpdatedDateTime)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type APIRevisionContract. func (a *APIRevisionContract) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "apiId": err = unpopulate(val, &a.APIID) delete(rawMsg, key) case "apiRevision": err = unpopulate(val, &a.APIRevision) delete(rawMsg, key) case "createdDateTime": var aux timeRFC3339 err = unpopulate(val, &aux) a.CreatedDateTime = (*time.Time)(&aux) delete(rawMsg, key) case "description": err = unpopulate(val, &a.Description) delete(rawMsg, key) case "isCurrent": err = unpopulate(val, &a.IsCurrent) delete(rawMsg, key) case "isOnline": err = unpopulate(val, &a.IsOnline) delete(rawMsg, key) case "privateUrl": err = unpopulate(val, &a.PrivateURL) delete(rawMsg, key) case "updatedDateTime": var aux timeRFC3339 err = unpopulate(val, &aux) a.UpdatedDateTime = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return nil } // APIRevisionInfoContract - Object used to create an API Revision or Version based on an existing API Revision type APIRevisionInfoContract struct { // Description of new API Revision. APIRevisionDescription *string `json:"apiRevisionDescription,omitempty"` // Version identifier for the new API Version. APIVersionName *string `json:"apiVersionName,omitempty"` // Version set details APIVersionSet *APIVersionSetContractDetails `json:"apiVersionSet,omitempty"` // Resource identifier of API to be used to create the revision from. SourceAPIID *string `json:"sourceApiId,omitempty"` } // APIRevisionListByServiceOptions contains the optional parameters for the APIRevision.ListByService method. type APIRevisionListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| apiRevision | filter // | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APISchemaBeginCreateOrUpdateOptions contains the optional parameters for the APISchema.BeginCreateOrUpdate method. type APISchemaBeginCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APISchemaDeleteOptions contains the optional parameters for the APISchema.Delete method. type APISchemaDeleteOptions struct { // If true removes all references to the schema before deleting it. Force *bool } // APISchemaGetEntityTagOptions contains the optional parameters for the APISchema.GetEntityTag method. type APISchemaGetEntityTagOptions struct { // placeholder for future optional parameters } // APISchemaGetOptions contains the optional parameters for the APISchema.Get method. type APISchemaGetOptions struct { // placeholder for future optional parameters } // APISchemaListByAPIOptions contains the optional parameters for the APISchema.ListByAPI method. type APISchemaListByAPIOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| contentType | filter // | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APITagDescriptionCreateOrUpdateOptions contains the optional parameters for the APITagDescription.CreateOrUpdate method. type APITagDescriptionCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APITagDescriptionDeleteOptions contains the optional parameters for the APITagDescription.Delete method. type APITagDescriptionDeleteOptions struct { // placeholder for future optional parameters } // APITagDescriptionGetEntityTagOptions contains the optional parameters for the APITagDescription.GetEntityTag method. type APITagDescriptionGetEntityTagOptions struct { // placeholder for future optional parameters } // APITagDescriptionGetOptions contains the optional parameters for the APITagDescription.Get method. type APITagDescriptionGetOptions struct { // placeholder for future optional parameters } // APITagDescriptionListByServiceOptions contains the optional parameters for the APITagDescription.ListByService method. type APITagDescriptionListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APITagResourceContractProperties - API contract properties for the Tag Resources. type APITagResourceContractProperties struct { APIEntityBaseContract // API identifier in the form /apis/{apiId}. ID *string `json:"id,omitempty"` // API name. Name *string `json:"name,omitempty"` // 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. Path *string `json:"path,omitempty"` // Describes on which protocols the operations in this API can be invoked. Protocols []*Protocol `json:"protocols,omitempty"` // Absolute URL of the backend service implementing this API. ServiceURL *string `json:"serviceUrl,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APITagResourceContractProperties. func (a APITagResourceContractProperties) MarshalJSON() ([]byte, error) { objectMap := a.APIEntityBaseContract.marshalInternal() populate(objectMap, "id", a.ID) populate(objectMap, "name", a.Name) populate(objectMap, "path", a.Path) populate(objectMap, "protocols", a.Protocols) populate(objectMap, "serviceUrl", a.ServiceURL) return json.Marshal(objectMap) } // APIUpdateContract - API update contract details. type APIUpdateContract struct { // Properties of the API entity that can be updated. Properties *APIContractUpdateProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIUpdateContract. func (a APIUpdateContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // APIUpdateOptions contains the optional parameters for the API.Update method. type APIUpdateOptions struct { // placeholder for future optional parameters } // APIVersionConstraint - Control Plane Apis version constraint for the API Management service. type APIVersionConstraint struct { // Limit control plane API calls to API Management service with version equal to or newer than this value. MinAPIVersion *string `json:"minApiVersion,omitempty"` } // APIVersionSetCollection - Paged Api Version Set list representation. type APIVersionSetCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*APIVersionSetContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIVersionSetCollection. func (a APIVersionSetCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", a.Count) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // APIVersionSetContract - Api Version Set Contract details. type APIVersionSetContract struct { Resource // Api VersionSet contract properties. Properties *APIVersionSetContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIVersionSetContract. func (a APIVersionSetContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // APIVersionSetContractDetails - An API Version Set contains the common configuration for a set of API Versions relating type APIVersionSetContractDetails struct { // Description of API Version Set. Description *string `json:"description,omitempty"` // Identifier for existing API Version Set. Omit this value to create a new Version Set. ID *string `json:"id,omitempty"` // The display Name of the API Version Set. Name *string `json:"name,omitempty"` // Name of HTTP header parameter that indicates the API Version if versioningScheme is set to header. VersionHeaderName *string `json:"versionHeaderName,omitempty"` // Name of query parameter that indicates the API Version if versioningScheme is set to query. VersionQueryName *string `json:"versionQueryName,omitempty"` // An value that determines where the API Version identifier will be located in a HTTP request. VersioningScheme *APIVersionSetContractDetailsVersioningScheme `json:"versioningScheme,omitempty"` } // APIVersionSetContractProperties - Properties of an API Version Set. type APIVersionSetContractProperties struct { APIVersionSetEntityBase // REQUIRED; Name of API Version Set DisplayName *string `json:"displayName,omitempty"` // REQUIRED; An value that determines where the API Version identifier will be located in a HTTP request. VersioningScheme *VersioningScheme `json:"versioningScheme,omitempty"` } // APIVersionSetCreateOrUpdateOptions contains the optional parameters for the APIVersionSet.CreateOrUpdate method. type APIVersionSetCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // APIVersionSetDeleteOptions contains the optional parameters for the APIVersionSet.Delete method. type APIVersionSetDeleteOptions struct { // placeholder for future optional parameters } // APIVersionSetEntityBase - Api Version set base parameters type APIVersionSetEntityBase struct { // Description of API Version Set. Description *string `json:"description,omitempty"` // Name of HTTP header parameter that indicates the API Version if versioningScheme is set to header. VersionHeaderName *string `json:"versionHeaderName,omitempty"` // Name of query parameter that indicates the API Version if versioningScheme is set to query. VersionQueryName *string `json:"versionQueryName,omitempty"` } // APIVersionSetGetEntityTagOptions contains the optional parameters for the APIVersionSet.GetEntityTag method. type APIVersionSetGetEntityTagOptions struct { // placeholder for future optional parameters } // APIVersionSetGetOptions contains the optional parameters for the APIVersionSet.Get method. type APIVersionSetGetOptions struct { // placeholder for future optional parameters } // APIVersionSetListByServiceOptions contains the optional parameters for the APIVersionSet.ListByService method. type APIVersionSetListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // APIVersionSetUpdateOptions contains the optional parameters for the APIVersionSet.Update method. type APIVersionSetUpdateOptions struct { // placeholder for future optional parameters } // APIVersionSetUpdateParameters - Parameters to update or create an Api Version Set Contract. type APIVersionSetUpdateParameters struct { // Parameters to update or create an Api Version Set Contract. Properties *APIVersionSetUpdateParametersProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type APIVersionSetUpdateParameters. func (a APIVersionSetUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // APIVersionSetUpdateParametersProperties - Properties used to create or update an API Version Set. type APIVersionSetUpdateParametersProperties struct { APIVersionSetEntityBase // Name of API Version Set DisplayName *string `json:"displayName,omitempty"` // An value that determines where the API Version identifier will be located in a HTTP request. VersioningScheme *VersioningScheme `json:"versioningScheme,omitempty"` } // AccessInformationCollection - Paged AccessInformation list representation. type AccessInformationCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*AccessInformationContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type AccessInformationCollection. func (a AccessInformationCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", a.Count) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // AccessInformationContract - Tenant Settings. type AccessInformationContract struct { Resource // AccessInformation entity contract properties. Properties *AccessInformationContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AccessInformationContract. func (a AccessInformationContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // AccessInformationContractProperties - Tenant access information contract of the API Management service. type AccessInformationContractProperties struct { // Determines whether direct access is enabled. Enabled *bool `json:"enabled,omitempty"` // Access Information type ('access' or 'gitAccess') ID *string `json:"id,omitempty"` // Principal (User) Identifier. PrincipalID *string `json:"principalId,omitempty"` } // AccessInformationCreateParameterProperties - Tenant access information update parameters of the API Management service type AccessInformationCreateParameterProperties struct { // Determines whether direct access is enabled. Enabled *bool `json:"enabled,omitempty"` // Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. PrimaryKey *string `json:"primaryKey,omitempty"` // Principal (User) Identifier. PrincipalID *string `json:"principalId,omitempty"` // Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. SecondaryKey *string `json:"secondaryKey,omitempty"` } // AccessInformationCreateParameters - Tenant access information update parameters. type AccessInformationCreateParameters struct { // Tenant access information update parameter properties. Properties *AccessInformationCreateParameterProperties `json:"properties,omitempty"` } // AccessInformationSecretsContract - Tenant access information contract of the API Management service. type AccessInformationSecretsContract struct { // Determines whether direct access is enabled. Enabled *bool `json:"enabled,omitempty"` // Access Information type ('access' or 'gitAccess') ID *string `json:"id,omitempty"` // Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. PrimaryKey *string `json:"primaryKey,omitempty"` // Principal (User) Identifier. PrincipalID *string `json:"principalId,omitempty"` // Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. SecondaryKey *string `json:"secondaryKey,omitempty"` } // AccessInformationUpdateParameterProperties - Tenant access information update parameters of the API Management service type AccessInformationUpdateParameterProperties struct { // Determines whether direct access is enabled. Enabled *bool `json:"enabled,omitempty"` } // AccessInformationUpdateParameters - Tenant access information update parameters. type AccessInformationUpdateParameters struct { // Tenant access information update parameter properties. Properties *AccessInformationUpdateParameterProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AccessInformationUpdateParameters. func (a AccessInformationUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // AdditionalLocation - Description of an additional API Management resource location. type AdditionalLocation struct { // REQUIRED; The location name of the additional region among Azure Data center regions. Location *string `json:"location,omitempty"` // REQUIRED; SKU properties of the API Management service. SKU *APIManagementServiceSKUProperties `json:"sku,omitempty"` // Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location. DisableGateway *bool `json:"disableGateway,omitempty"` // Virtual network configuration for the location. VirtualNetworkConfiguration *VirtualNetworkConfiguration `json:"virtualNetworkConfiguration,omitempty"` // A list of availability zones denoting where the resource needs to come from. Zones []*string `json:"zones,omitempty"` // READ-ONLY; Gateway URL of the API Management service in the Region. GatewayRegionalURL *string `json:"gatewayRegionalUrl,omitempty" azure:"ro"` // READ-ONLY; 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, // Premium and Isolated SKU. PrivateIPAddresses []*string `json:"privateIPAddresses,omitempty" azure:"ro"` // READ-ONLY; Public Static Load Balanced IP addresses of the API Management service in the additional location. Available only for Basic, Standard, Premium // and Isolated SKU. PublicIPAddresses []*string `json:"publicIPAddresses,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type AdditionalLocation. func (a AdditionalLocation) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "disableGateway", a.DisableGateway) populate(objectMap, "gatewayRegionalUrl", a.GatewayRegionalURL) populate(objectMap, "location", a.Location) populate(objectMap, "privateIPAddresses", a.PrivateIPAddresses) populate(objectMap, "publicIPAddresses", a.PublicIPAddresses) populate(objectMap, "sku", a.SKU) populate(objectMap, "virtualNetworkConfiguration", a.VirtualNetworkConfiguration) populate(objectMap, "zones", a.Zones) return json.Marshal(objectMap) } // ApimResource - The Resource definition. type ApimResource struct { // Resource tags. Tags map[string]*string `json:"tags,omitempty"` // READ-ONLY; Resource ID. ID *string `json:"id,omitempty" azure:"ro"` // READ-ONLY; Resource name. Name *string `json:"name,omitempty" azure:"ro"` // READ-ONLY; Resource type for API Management resource is set to Microsoft.ApiManagement. Type *string `json:"type,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type ApimResource. func (a ApimResource) MarshalJSON() ([]byte, error) { objectMap := a.marshalInternal() return json.Marshal(objectMap) } func (a ApimResource) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "id", a.ID) populate(objectMap, "name", a.Name) populate(objectMap, "tags", a.Tags) populate(objectMap, "type", a.Type) return objectMap } // AssociationContract - Association entity details. type AssociationContract struct { Resource // Association entity contract properties. Properties *AssociationContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AssociationContract. func (a AssociationContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // AssociationContractProperties - Association entity contract properties. type AssociationContractProperties struct { // Provisioning state. ProvisioningState *string `json:"provisioningState,omitempty"` } // AuthenticationSettingsContract - API Authentication Settings. type AuthenticationSettingsContract struct { // OAuth2 Authentication settings OAuth2 *OAuth2AuthenticationSettingsContract `json:"oAuth2,omitempty"` // OpenID Connect Authentication Settings Openid *OpenIDAuthenticationSettingsContract `json:"openid,omitempty"` } // AuthorizationServerCollection - Paged OAuth2 Authorization Servers list representation. type AuthorizationServerCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*AuthorizationServerContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AuthorizationServerCollection. func (a AuthorizationServerCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", a.Count) populate(objectMap, "nextLink", a.NextLink) populate(objectMap, "value", a.Value) return json.Marshal(objectMap) } // AuthorizationServerContract - External OAuth authorization server settings. type AuthorizationServerContract struct { Resource // Properties of the External OAuth authorization server Contract. Properties *AuthorizationServerContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AuthorizationServerContract. func (a AuthorizationServerContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // AuthorizationServerContractBaseProperties - External OAuth authorization server Update settings contract. type AuthorizationServerContractBaseProperties struct { // HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. AuthorizationMethods []*AuthorizationMethod `json:"authorizationMethods,omitempty"` // Specifies the mechanism by which access token is passed to the API. BearerTokenSendingMethods []*BearerTokenSendingMethod `json:"bearerTokenSendingMethods,omitempty"` // 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. ClientAuthenticationMethod []*ClientAuthenticationMethod `json:"clientAuthenticationMethod,omitempty"` // 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. DefaultScope *string `json:"defaultScope,omitempty"` // Description of the authorization server. Can contain HTML formatting tags. Description *string `json:"description,omitempty"` // Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. ResourceOwnerPassword *string `json:"resourceOwnerPassword,omitempty"` // Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. ResourceOwnerUsername *string `json:"resourceOwnerUsername,omitempty"` // If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol // security. SupportState *bool `json:"supportState,omitempty"` // 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"}. TokenBodyParameters []*TokenBodyParameterContract `json:"tokenBodyParameters,omitempty"` // OAuth token endpoint. Contains absolute URI to entity being referenced. TokenEndpoint *string `json:"tokenEndpoint,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AuthorizationServerContractBaseProperties. func (a AuthorizationServerContractBaseProperties) MarshalJSON() ([]byte, error) { objectMap := a.marshalInternal() return json.Marshal(objectMap) } func (a AuthorizationServerContractBaseProperties) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "authorizationMethods", a.AuthorizationMethods) populate(objectMap, "bearerTokenSendingMethods", a.BearerTokenSendingMethods) populate(objectMap, "clientAuthenticationMethod", a.ClientAuthenticationMethod) populate(objectMap, "defaultScope", a.DefaultScope) populate(objectMap, "description", a.Description) populate(objectMap, "resourceOwnerPassword", a.ResourceOwnerPassword) populate(objectMap, "resourceOwnerUsername", a.ResourceOwnerUsername) populate(objectMap, "supportState", a.SupportState) populate(objectMap, "tokenBodyParameters", a.TokenBodyParameters) populate(objectMap, "tokenEndpoint", a.TokenEndpoint) return objectMap } // AuthorizationServerContractProperties - External OAuth authorization server settings Properties. type AuthorizationServerContractProperties struct { AuthorizationServerContractBaseProperties // REQUIRED; OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"` // REQUIRED; Client or app id registered with this authorization server. ClientID *string `json:"clientId,omitempty"` // REQUIRED; Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being // referenced. ClientRegistrationEndpoint *string `json:"clientRegistrationEndpoint,omitempty"` // REQUIRED; User-friendly authorization server name. DisplayName *string `json:"displayName,omitempty"` // REQUIRED; Form of an authorization grant, which the client uses to request the access token. GrantTypes []*GrantType `json:"grantTypes,omitempty"` // Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request // to get the value. ClientSecret *string `json:"clientSecret,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AuthorizationServerContractProperties. func (a AuthorizationServerContractProperties) MarshalJSON() ([]byte, error) { objectMap := a.AuthorizationServerContractBaseProperties.marshalInternal() populate(objectMap, "authorizationEndpoint", a.AuthorizationEndpoint) populate(objectMap, "clientId", a.ClientID) populate(objectMap, "clientRegistrationEndpoint", a.ClientRegistrationEndpoint) populate(objectMap, "clientSecret", a.ClientSecret) populate(objectMap, "displayName", a.DisplayName) populate(objectMap, "grantTypes", a.GrantTypes) return json.Marshal(objectMap) } // AuthorizationServerCreateOrUpdateOptions contains the optional parameters for the AuthorizationServer.CreateOrUpdate method. type AuthorizationServerCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // AuthorizationServerDeleteOptions contains the optional parameters for the AuthorizationServer.Delete method. type AuthorizationServerDeleteOptions struct { // placeholder for future optional parameters } // AuthorizationServerGetEntityTagOptions contains the optional parameters for the AuthorizationServer.GetEntityTag method. type AuthorizationServerGetEntityTagOptions struct { // placeholder for future optional parameters } // AuthorizationServerGetOptions contains the optional parameters for the AuthorizationServer.Get method. type AuthorizationServerGetOptions struct { // placeholder for future optional parameters } // AuthorizationServerListByServiceOptions contains the optional parameters for the AuthorizationServer.ListByService method. type AuthorizationServerListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // AuthorizationServerListSecretsOptions contains the optional parameters for the AuthorizationServer.ListSecrets method. type AuthorizationServerListSecretsOptions struct { // placeholder for future optional parameters } // AuthorizationServerSecretsContract - OAuth Server Secrets Contract. type AuthorizationServerSecretsContract struct { // oAuth Authorization Server Secrets. ClientSecret *string `json:"clientSecret,omitempty"` // Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. ResourceOwnerPassword *string `json:"resourceOwnerPassword,omitempty"` // Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. ResourceOwnerUsername *string `json:"resourceOwnerUsername,omitempty"` } // AuthorizationServerUpdateContract - External OAuth authorization server settings. type AuthorizationServerUpdateContract struct { Resource // Properties of the External OAuth authorization server update Contract. Properties *AuthorizationServerUpdateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AuthorizationServerUpdateContract. func (a AuthorizationServerUpdateContract) MarshalJSON() ([]byte, error) { objectMap := a.Resource.marshalInternal() populate(objectMap, "properties", a.Properties) return json.Marshal(objectMap) } // AuthorizationServerUpdateContractProperties - External OAuth authorization server Update settings contract. type AuthorizationServerUpdateContractProperties struct { AuthorizationServerContractBaseProperties // OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty"` // Client or app id registered with this authorization server. ClientID *string `json:"clientId,omitempty"` // Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. ClientRegistrationEndpoint *string `json:"clientRegistrationEndpoint,omitempty"` // Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request // to get the value. ClientSecret *string `json:"clientSecret,omitempty"` // User-friendly authorization server name. DisplayName *string `json:"displayName,omitempty"` // Form of an authorization grant, which the client uses to request the access token. GrantTypes []*GrantType `json:"grantTypes,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type AuthorizationServerUpdateContractProperties. func (a AuthorizationServerUpdateContractProperties) MarshalJSON() ([]byte, error) { objectMap := a.AuthorizationServerContractBaseProperties.marshalInternal() populate(objectMap, "authorizationEndpoint", a.AuthorizationEndpoint) populate(objectMap, "clientId", a.ClientID) populate(objectMap, "clientRegistrationEndpoint", a.ClientRegistrationEndpoint) populate(objectMap, "clientSecret", a.ClientSecret) populate(objectMap, "displayName", a.DisplayName) populate(objectMap, "grantTypes", a.GrantTypes) return json.Marshal(objectMap) } // AuthorizationServerUpdateOptions contains the optional parameters for the AuthorizationServer.Update method. type AuthorizationServerUpdateOptions struct { // placeholder for future optional parameters } // BackendAuthorizationHeaderCredentials - Authorization header information. type BackendAuthorizationHeaderCredentials struct { // REQUIRED; Authentication Parameter value. Parameter *string `json:"parameter,omitempty"` // REQUIRED; Authentication Scheme name. Scheme *string `json:"scheme,omitempty"` } // BackendBaseParameters - Backend entity base Parameter set. type BackendBaseParameters struct { // Backend Credentials Contract Properties Credentials *BackendCredentialsContract `json:"credentials,omitempty"` // Backend Description. Description *string `json:"description,omitempty"` // Backend Properties contract Properties *BackendProperties `json:"properties,omitempty"` // Backend Proxy Contract Properties Proxy *BackendProxyContract `json:"proxy,omitempty"` // Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps. ResourceID *string `json:"resourceId,omitempty"` // Backend TLS Properties TLS *BackendTLSProperties `json:"tls,omitempty"` // Backend Title. Title *string `json:"title,omitempty"` } // BackendCollection - Paged Backend list representation. type BackendCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Backend values. Value []*BackendContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type BackendCollection. func (b BackendCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", b.Count) populate(objectMap, "nextLink", b.NextLink) populate(objectMap, "value", b.Value) return json.Marshal(objectMap) } // BackendContract - Backend details. type BackendContract struct { Resource // Backend entity contract properties. Properties *BackendContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type BackendContract. func (b BackendContract) MarshalJSON() ([]byte, error) { objectMap := b.Resource.marshalInternal() populate(objectMap, "properties", b.Properties) return json.Marshal(objectMap) } // BackendContractProperties - Parameters supplied to the Create Backend operation. type BackendContractProperties struct { BackendBaseParameters // REQUIRED; Backend communication protocol. Protocol *BackendProtocol `json:"protocol,omitempty"` // REQUIRED; Runtime Url of the Backend. URL *string `json:"url,omitempty"` } // BackendCreateOrUpdateOptions contains the optional parameters for the Backend.CreateOrUpdate method. type BackendCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // BackendCredentialsContract - Details of the Credentials used to connect to Backend. type BackendCredentialsContract struct { // Authorization header authentication Authorization *BackendAuthorizationHeaderCredentials `json:"authorization,omitempty"` // List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. Certificate []*string `json:"certificate,omitempty"` // List of Client Certificate Ids. CertificateIDs []*string `json:"certificateIds,omitempty"` // Header Parameter description. Header map[string][]*string `json:"header,omitempty"` // Query Parameter description. Query map[string][]*string `json:"query,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type BackendCredentialsContract. func (b BackendCredentialsContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "authorization", b.Authorization) populate(objectMap, "certificate", b.Certificate) populate(objectMap, "certificateIds", b.CertificateIDs) populate(objectMap, "header", b.Header) populate(objectMap, "query", b.Query) return json.Marshal(objectMap) } // BackendDeleteOptions contains the optional parameters for the Backend.Delete method. type BackendDeleteOptions struct { // placeholder for future optional parameters } // BackendGetEntityTagOptions contains the optional parameters for the Backend.GetEntityTag method. type BackendGetEntityTagOptions struct { // placeholder for future optional parameters } // BackendGetOptions contains the optional parameters for the Backend.Get method. type BackendGetOptions struct { // placeholder for future optional parameters } // BackendListByServiceOptions contains the optional parameters for the Backend.ListByService method. type BackendListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // BackendProperties - Properties specific to the Backend Type. type BackendProperties struct { // Backend Service Fabric Cluster Properties ServiceFabricCluster *BackendServiceFabricClusterProperties `json:"serviceFabricCluster,omitempty"` } // BackendProxyContract - Details of the Backend WebProxy Server to use in the Request to Backend. type BackendProxyContract struct { // REQUIRED; WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings. URL *string `json:"url,omitempty"` // Password to connect to the WebProxy Server Password *string `json:"password,omitempty"` // Username to connect to the WebProxy server Username *string `json:"username,omitempty"` } // BackendReconnectContract - Reconnect request parameters. type BackendReconnectContract struct { Resource // Reconnect request properties. Properties *BackendReconnectProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type BackendReconnectContract. func (b BackendReconnectContract) MarshalJSON() ([]byte, error) { objectMap := b.Resource.marshalInternal() populate(objectMap, "properties", b.Properties) return json.Marshal(objectMap) } // BackendReconnectOptions contains the optional parameters for the Backend.Reconnect method. type BackendReconnectOptions struct { // Reconnect request parameters. Parameters *BackendReconnectContract } // BackendReconnectProperties - Properties to control reconnect requests. type BackendReconnectProperties struct { // Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M. After *string `json:"after,omitempty"` } // BackendServiceFabricClusterProperties - Properties of the Service Fabric Type Backend. type BackendServiceFabricClusterProperties struct { // REQUIRED; The cluster management endpoint. ManagementEndpoints []*string `json:"managementEndpoints,omitempty"` // The client certificate id for the management endpoint. ClientCertificateID *string `json:"clientCertificateId,omitempty"` // The client certificate thumbprint for the management endpoint. Will be ignored if certificatesIds are provided ClientCertificatethumbprint *string `json:"clientCertificatethumbprint,omitempty"` // Maximum number of retries while attempting resolve the partition. MaxPartitionResolutionRetries *int32 `json:"maxPartitionResolutionRetries,omitempty"` // Thumbprints of certificates cluster management service uses for tls communication ServerCertificateThumbprints []*string `json:"serverCertificateThumbprints,omitempty"` // Server X509 Certificate Names Collection ServerX509Names []*X509CertificateName `json:"serverX509Names,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type BackendServiceFabricClusterProperties. func (b BackendServiceFabricClusterProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "clientCertificateId", b.ClientCertificateID) populate(objectMap, "clientCertificatethumbprint", b.ClientCertificatethumbprint) populate(objectMap, "managementEndpoints", b.ManagementEndpoints) populate(objectMap, "maxPartitionResolutionRetries", b.MaxPartitionResolutionRetries) populate(objectMap, "serverCertificateThumbprints", b.ServerCertificateThumbprints) populate(objectMap, "serverX509Names", b.ServerX509Names) return json.Marshal(objectMap) } // BackendTLSProperties - Properties controlling TLS Certificate Validation. type BackendTLSProperties struct { // Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host. ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"` // Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host. ValidateCertificateName *bool `json:"validateCertificateName,omitempty"` } // BackendUpdateOptions contains the optional parameters for the Backend.Update method. type BackendUpdateOptions struct { // placeholder for future optional parameters } // BackendUpdateParameterProperties - Parameters supplied to the Update Backend operation. type BackendUpdateParameterProperties struct { BackendBaseParameters // Backend communication protocol. Protocol *BackendProtocol `json:"protocol,omitempty"` // Runtime Url of the Backend. URL *string `json:"url,omitempty"` } // BackendUpdateParameters - Backend update parameters. type BackendUpdateParameters struct { // Backend entity update contract properties. Properties *BackendUpdateParameterProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type BackendUpdateParameters. func (b BackendUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", b.Properties) return json.Marshal(objectMap) } // BodyDiagnosticSettings - Body logging settings. type BodyDiagnosticSettings struct { // Number of request body bytes to log. Bytes *int32 `json:"bytes,omitempty"` } // CacheCollection - Paged Caches list representation. type CacheCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*CacheContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CacheCollection. func (c CacheCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", c.Count) populate(objectMap, "nextLink", c.NextLink) populate(objectMap, "value", c.Value) return json.Marshal(objectMap) } // CacheContract - Cache details. type CacheContract struct { Resource // Cache properties details. Properties *CacheContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CacheContract. func (c CacheContract) MarshalJSON() ([]byte, error) { objectMap := c.Resource.marshalInternal() populate(objectMap, "properties", c.Properties) return json.Marshal(objectMap) } // CacheContractProperties - Properties of the Cache contract. type CacheContractProperties struct { // REQUIRED; Runtime connection string to cache ConnectionString *string `json:"connectionString,omitempty"` // REQUIRED; Location identifier to use cache from (should be either 'default' or valid Azure region identifier) UseFromLocation *string `json:"useFromLocation,omitempty"` // Cache description Description *string `json:"description,omitempty"` // Original uri of entity in external system cache points to ResourceID *string `json:"resourceId,omitempty"` } // CacheCreateOrUpdateOptions contains the optional parameters for the Cache.CreateOrUpdate method. type CacheCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // CacheDeleteOptions contains the optional parameters for the Cache.Delete method. type CacheDeleteOptions struct { // placeholder for future optional parameters } // CacheGetEntityTagOptions contains the optional parameters for the Cache.GetEntityTag method. type CacheGetEntityTagOptions struct { // placeholder for future optional parameters } // CacheGetOptions contains the optional parameters for the Cache.Get method. type CacheGetOptions struct { // placeholder for future optional parameters } // CacheListByServiceOptions contains the optional parameters for the Cache.ListByService method. type CacheListByServiceOptions struct { // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // CacheUpdateOptions contains the optional parameters for the Cache.Update method. type CacheUpdateOptions struct { // placeholder for future optional parameters } // CacheUpdateParameters - Cache update details. type CacheUpdateParameters struct { // Cache update properties details. Properties *CacheUpdateProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CacheUpdateParameters. func (c CacheUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", c.Properties) return json.Marshal(objectMap) } // CacheUpdateProperties - Parameters supplied to the Update Cache operation. type CacheUpdateProperties struct { // Runtime connection string to cache ConnectionString *string `json:"connectionString,omitempty"` // Cache description Description *string `json:"description,omitempty"` // Original uri of entity in external system cache points to ResourceID *string `json:"resourceId,omitempty"` // Location identifier to use cache from (should be either 'default' or valid Azure region identifier) UseFromLocation *string `json:"useFromLocation,omitempty"` } // CertificateCollection - Paged Certificates list representation. type CertificateCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*CertificateContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CertificateCollection. func (c CertificateCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", c.Count) populate(objectMap, "nextLink", c.NextLink) populate(objectMap, "value", c.Value) return json.Marshal(objectMap) } // CertificateConfiguration - Certificate configuration which consist of non-trusted intermediates and root certificates. type CertificateConfiguration struct { // REQUIRED; The System.Security.Cryptography.x509certificates.StoreName certificate store location. Only Root and CertificateAuthority are valid locations. StoreName *CertificateConfigurationStoreName `json:"storeName,omitempty"` // Certificate information. Certificate *CertificateInformation `json:"certificate,omitempty"` // Certificate Password. CertificatePassword *string `json:"certificatePassword,omitempty"` // Base64 Encoded certificate. EncodedCertificate *string `json:"encodedCertificate,omitempty"` } // CertificateContract - Certificate details. type CertificateContract struct { Resource // Certificate properties details. Properties *CertificateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CertificateContract. func (c CertificateContract) MarshalJSON() ([]byte, error) { objectMap := c.Resource.marshalInternal() populate(objectMap, "properties", c.Properties) return json.Marshal(objectMap) } // CertificateContractProperties - Properties of the Certificate contract. type CertificateContractProperties struct { // 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. ExpirationDate *time.Time `json:"expirationDate,omitempty"` // REQUIRED; Subject attribute of the certificate. Subject *string `json:"subject,omitempty"` // REQUIRED; Thumbprint of the certificate. Thumbprint *string `json:"thumbprint,omitempty"` // KeyVault location details of the certificate. KeyVault *KeyVaultContractProperties `json:"keyVault,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CertificateContractProperties. func (c CertificateContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "expirationDate", (*timeRFC3339)(c.ExpirationDate)) populate(objectMap, "keyVault", c.KeyVault) populate(objectMap, "subject", c.Subject) populate(objectMap, "thumbprint", c.Thumbprint) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type CertificateContractProperties. func (c *CertificateContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "expirationDate": var aux timeRFC3339 err = unpopulate(val, &aux) c.ExpirationDate = (*time.Time)(&aux) delete(rawMsg, key) case "keyVault": err = unpopulate(val, &c.KeyVault) delete(rawMsg, key) case "subject": err = unpopulate(val, &c.Subject) delete(rawMsg, key) case "thumbprint": err = unpopulate(val, &c.Thumbprint) delete(rawMsg, key) } if err != nil { return err } } return nil } // CertificateCreateOrUpdateOptions contains the optional parameters for the Certificate.CreateOrUpdate method. type CertificateCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // CertificateCreateOrUpdateParameters - Certificate create or update details. type CertificateCreateOrUpdateParameters struct { // Certificate create or update properties details. Properties *CertificateCreateOrUpdateProperties `json:"properties,omitempty"` } // CertificateCreateOrUpdateProperties - Parameters supplied to the CreateOrUpdate certificate operation. type CertificateCreateOrUpdateProperties struct { // Base 64 encoded certificate using the application/x-pkcs12 representation. Data *string `json:"data,omitempty"` // KeyVault location details of the certificate. KeyVault *KeyVaultContractCreateProperties `json:"keyVault,omitempty"` // Password for the Certificate Password *string `json:"password,omitempty"` } // CertificateDeleteOptions contains the optional parameters for the Certificate.Delete method. type CertificateDeleteOptions struct { // placeholder for future optional parameters } // CertificateGetEntityTagOptions contains the optional parameters for the Certificate.GetEntityTag method. type CertificateGetEntityTagOptions struct { // placeholder for future optional parameters } // CertificateGetOptions contains the optional parameters for the Certificate.Get method. type CertificateGetOptions struct { // placeholder for future optional parameters } // CertificateInformation - SSL certificate information. type CertificateInformation struct { // 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. Expiry *time.Time `json:"expiry,omitempty"` // REQUIRED; Subject of the certificate. Subject *string `json:"subject,omitempty"` // REQUIRED; Thumbprint of the certificate. Thumbprint *string `json:"thumbprint,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type CertificateInformation. func (c CertificateInformation) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "expiry", (*timeRFC3339)(c.Expiry)) populate(objectMap, "subject", c.Subject) populate(objectMap, "thumbprint", c.Thumbprint) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type CertificateInformation. func (c *CertificateInformation) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "expiry": var aux timeRFC3339 err = unpopulate(val, &aux) c.Expiry = (*time.Time)(&aux) delete(rawMsg, key) case "subject": err = unpopulate(val, &c.Subject) delete(rawMsg, key) case "thumbprint": err = unpopulate(val, &c.Thumbprint) delete(rawMsg, key) } if err != nil { return err } } return nil } // CertificateListByServiceOptions contains the optional parameters for the Certificate.ListByService method. type CertificateListByServiceOptions struct { // | 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 | |
Filter *string // When set to true, the response contains only certificates entities which failed refresh. IsKeyVaultRefreshFailed *bool // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // CertificateRefreshSecretOptions contains the optional parameters for the Certificate.RefreshSecret method. type CertificateRefreshSecretOptions struct { // placeholder for future optional parameters } // ClientSecretContract - Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. type ClientSecretContract struct { // Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. ClientSecret *string `json:"clientSecret,omitempty"` } // ConnectivityStatusContract - Details about connectivity to a resource. type ConnectivityStatusContract struct { // REQUIRED; Whether this is optional. IsOptional *bool `json:"isOptional,omitempty"` // 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. LastStatusChange *time.Time `json:"lastStatusChange,omitempty"` // 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. LastUpdated *time.Time `json:"lastUpdated,omitempty"` // 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. Name *string `json:"name,omitempty"` // REQUIRED; Resource Type. ResourceType *string `json:"resourceType,omitempty"` // REQUIRED; Resource Connectivity Status Type identifier. Status *ConnectivityStatusType `json:"status,omitempty"` // Error details of the connectivity to the resource. Error *string `json:"error,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ConnectivityStatusContract. func (c ConnectivityStatusContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "error", c.Error) populate(objectMap, "isOptional", c.IsOptional) populate(objectMap, "lastStatusChange", (*timeRFC3339)(c.LastStatusChange)) populate(objectMap, "lastUpdated", (*timeRFC3339)(c.LastUpdated)) populate(objectMap, "name", c.Name) populate(objectMap, "resourceType", c.ResourceType) populate(objectMap, "status", c.Status) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type ConnectivityStatusContract. func (c *ConnectivityStatusContract) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "error": err = unpopulate(val, &c.Error) delete(rawMsg, key) case "isOptional": err = unpopulate(val, &c.IsOptional) delete(rawMsg, key) case "lastStatusChange": var aux timeRFC3339 err = unpopulate(val, &aux) c.LastStatusChange = (*time.Time)(&aux) delete(rawMsg, key) case "lastUpdated": var aux timeRFC3339 err = unpopulate(val, &aux) c.LastUpdated = (*time.Time)(&aux) delete(rawMsg, key) case "name": err = unpopulate(val, &c.Name) delete(rawMsg, key) case "resourceType": err = unpopulate(val, &c.ResourceType) delete(rawMsg, key) case "status": err = unpopulate(val, &c.Status) delete(rawMsg, key) } if err != nil { return err } } return nil } // ContentItemCollection - Paged list of content items. type ContentItemCollection struct { // READ-ONLY; Next page link, if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Collection of content items. Value []*ContentItemContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type ContentItemCollection. func (c ContentItemCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", c.NextLink) populate(objectMap, "value", c.Value) return json.Marshal(objectMap) } // ContentItemContract - Content type contract details. type ContentItemContract struct { Resource // Properties of the content item. Properties map[string]interface{} `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ContentItemContract. func (c ContentItemContract) MarshalJSON() ([]byte, error) { objectMap := c.Resource.marshalInternal() populate(objectMap, "properties", c.Properties) return json.Marshal(objectMap) } // ContentItemCreateOrUpdateOptions contains the optional parameters for the ContentItem.CreateOrUpdate method. type ContentItemCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // ContentItemDeleteOptions contains the optional parameters for the ContentItem.Delete method. type ContentItemDeleteOptions struct { // placeholder for future optional parameters } // ContentItemGetEntityTagOptions contains the optional parameters for the ContentItem.GetEntityTag method. type ContentItemGetEntityTagOptions struct { // placeholder for future optional parameters } // ContentItemGetOptions contains the optional parameters for the ContentItem.Get method. type ContentItemGetOptions struct { // placeholder for future optional parameters } // ContentItemListByServiceOptions contains the optional parameters for the ContentItem.ListByService method. type ContentItemListByServiceOptions struct { // placeholder for future optional parameters } // ContentTypeCollection - Paged list of content types. type ContentTypeCollection struct { // READ-ONLY; Next page link, if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Collection of content types. Value []*ContentTypeContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type ContentTypeCollection. func (c ContentTypeCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", c.NextLink) populate(objectMap, "value", c.Value) return json.Marshal(objectMap) } // ContentTypeContract - Content type contract details. type ContentTypeContract struct { Resource // Properties of the content type. Properties *ContentTypeContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ContentTypeContract. func (c ContentTypeContract) MarshalJSON() ([]byte, error) { objectMap := c.Resource.marshalInternal() populate(objectMap, "properties", c.Properties) return json.Marshal(objectMap) } type ContentTypeContractProperties struct { // Content type description. Description *string `json:"description,omitempty"` // Content type identifier ID *string `json:"id,omitempty"` // Content type name. Must be 1 to 250 characters long. Name *string `json:"name,omitempty"` // Content type schema. Schema map[string]interface{} `json:"schema,omitempty"` // Content type version. Version *string `json:"version,omitempty"` } // ContentTypeCreateOrUpdateOptions contains the optional parameters for the ContentType.CreateOrUpdate method. type ContentTypeCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // ContentTypeDeleteOptions contains the optional parameters for the ContentType.Delete method. type ContentTypeDeleteOptions struct { // placeholder for future optional parameters } // ContentTypeGetOptions contains the optional parameters for the ContentType.Get method. type ContentTypeGetOptions struct { // placeholder for future optional parameters } // ContentTypeListByServiceOptions contains the optional parameters for the ContentType.ListByService method. type ContentTypeListByServiceOptions struct { // placeholder for future optional parameters } type DataMasking struct { // Masking settings for headers Headers []*DataMaskingEntity `json:"headers,omitempty"` // Masking settings for Url query parameters QueryParams []*DataMaskingEntity `json:"queryParams,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type DataMasking. func (d DataMasking) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "headers", d.Headers) populate(objectMap, "queryParams", d.QueryParams) return json.Marshal(objectMap) } type DataMaskingEntity struct { // Data masking mode. Mode *DataMaskingMode `json:"mode,omitempty"` // The name of an entity to mask (e.g. a name of a header or a query parameter). Value *string `json:"value,omitempty"` } // DelegationSettingsCreateOrUpdateOptions contains the optional parameters for the DelegationSettings.CreateOrUpdate method. type DelegationSettingsCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // DelegationSettingsGetEntityTagOptions contains the optional parameters for the DelegationSettings.GetEntityTag method. type DelegationSettingsGetEntityTagOptions struct { // placeholder for future optional parameters } // DelegationSettingsGetOptions contains the optional parameters for the DelegationSettings.Get method. type DelegationSettingsGetOptions struct { // placeholder for future optional parameters } // DelegationSettingsListSecretsOptions contains the optional parameters for the DelegationSettings.ListSecrets method. type DelegationSettingsListSecretsOptions struct { // placeholder for future optional parameters } // DelegationSettingsUpdateOptions contains the optional parameters for the DelegationSettings.Update method. type DelegationSettingsUpdateOptions struct { // placeholder for future optional parameters } // DeletedServiceContract - Deleted Api Management Service information. type DeletedServiceContract struct { Resource // Deleted Api Management Service details. Properties *DeletedServiceContractProperties `json:"properties,omitempty"` // READ-ONLY; Api Management Service Master Location. Location *string `json:"location,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type DeletedServiceContract. func (d DeletedServiceContract) MarshalJSON() ([]byte, error) { objectMap := d.Resource.marshalInternal() populate(objectMap, "location", d.Location) populate(objectMap, "properties", d.Properties) return json.Marshal(objectMap) } type DeletedServiceContractProperties struct { // UTC Timestamp when the service was soft-deleted. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. DeletionDate *time.Time `json:"deletionDate,omitempty"` // UTC Date and Time when the service will be automatically purged. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the // ISO 8601 standard. ScheduledPurgeDate *time.Time `json:"scheduledPurgeDate,omitempty"` // Fully-qualified API Management Service Resource ID ServiceID *string `json:"serviceId,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type DeletedServiceContractProperties. func (d DeletedServiceContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "deletionDate", (*timeRFC3339)(d.DeletionDate)) populate(objectMap, "scheduledPurgeDate", (*timeRFC3339)(d.ScheduledPurgeDate)) populate(objectMap, "serviceId", d.ServiceID) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type DeletedServiceContractProperties. func (d *DeletedServiceContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "deletionDate": var aux timeRFC3339 err = unpopulate(val, &aux) d.DeletionDate = (*time.Time)(&aux) delete(rawMsg, key) case "scheduledPurgeDate": var aux timeRFC3339 err = unpopulate(val, &aux) d.ScheduledPurgeDate = (*time.Time)(&aux) delete(rawMsg, key) case "serviceId": err = unpopulate(val, &d.ServiceID) delete(rawMsg, key) } if err != nil { return err } } return nil } // DeletedServicesBeginPurgeOptions contains the optional parameters for the DeletedServices.BeginPurge method. type DeletedServicesBeginPurgeOptions struct { // placeholder for future optional parameters } // DeletedServicesCollection - Paged deleted Api Management Services List Representation. type DeletedServicesCollection struct { // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*DeletedServiceContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type DeletedServicesCollection. func (d DeletedServicesCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", d.NextLink) populate(objectMap, "value", d.Value) return json.Marshal(objectMap) } // DeletedServicesGetByNameOptions contains the optional parameters for the DeletedServices.GetByName method. type DeletedServicesGetByNameOptions struct { // placeholder for future optional parameters } // DeletedServicesListBySubscriptionOptions contains the optional parameters for the DeletedServices.ListBySubscription method. type DeletedServicesListBySubscriptionOptions struct { // placeholder for future optional parameters } // DeployConfigurationParameterProperties - Parameters supplied to the Deploy Configuration operation. type DeployConfigurationParameterProperties struct { // REQUIRED; The name of the Git branch from which the configuration is to be deployed to the configuration database. Branch *string `json:"branch,omitempty"` // The value enforcing deleting subscriptions to products that are deleted in this update. Force *bool `json:"force,omitempty"` } // DeployConfigurationParameters - Deploy Tenant Configuration Contract. type DeployConfigurationParameters struct { // Deploy Configuration Parameter contract properties. Properties *DeployConfigurationParameterProperties `json:"properties,omitempty"` } // DiagnosticCollection - Paged Diagnostic list representation. type DiagnosticCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*DiagnosticContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type DiagnosticCollection. func (d DiagnosticCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", d.Count) populate(objectMap, "nextLink", d.NextLink) populate(objectMap, "value", d.Value) return json.Marshal(objectMap) } // DiagnosticContract - Diagnostic details. type DiagnosticContract struct { Resource // Diagnostic entity contract properties. Properties *DiagnosticContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type DiagnosticContract. func (d DiagnosticContract) MarshalJSON() ([]byte, error) { objectMap := d.Resource.marshalInternal() populate(objectMap, "properties", d.Properties) return json.Marshal(objectMap) } // DiagnosticContractProperties - Diagnostic Entity Properties type DiagnosticContractProperties struct { // REQUIRED; Resource Id of a target logger. LoggerID *string `json:"loggerId,omitempty"` // Specifies for what type of messages sampling settings should not apply. AlwaysLog *AlwaysLog `json:"alwaysLog,omitempty"` // Diagnostic settings for incoming/outgoing HTTP messages to the Backend Backend *PipelineDiagnosticSettings `json:"backend,omitempty"` // Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. Frontend *PipelineDiagnosticSettings `json:"frontend,omitempty"` // Sets correlation protocol to use for Application Insights diagnostics. HTTPCorrelationProtocol *HTTPCorrelationProtocol `json:"httpCorrelationProtocol,omitempty"` // Log the ClientIP. Default is false. LogClientIP *bool `json:"logClientIp,omitempty"` // The format of the Operation Name for Application Insights telemetries. Default is Name. OperationNameFormat *OperationNameFormat `json:"operationNameFormat,omitempty"` // Sampling settings for Diagnostic. Sampling *SamplingSettings `json:"sampling,omitempty"` // The verbosity level applied to traces emitted by trace policies. Verbosity *Verbosity `json:"verbosity,omitempty"` } // DiagnosticCreateOrUpdateOptions contains the optional parameters for the Diagnostic.CreateOrUpdate method. type DiagnosticCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // DiagnosticDeleteOptions contains the optional parameters for the Diagnostic.Delete method. type DiagnosticDeleteOptions struct { // placeholder for future optional parameters } // DiagnosticGetEntityTagOptions contains the optional parameters for the Diagnostic.GetEntityTag method. type DiagnosticGetEntityTagOptions struct { // placeholder for future optional parameters } // DiagnosticGetOptions contains the optional parameters for the Diagnostic.Get method. type DiagnosticGetOptions struct { // placeholder for future optional parameters } // DiagnosticListByServiceOptions contains the optional parameters for the Diagnostic.ListByService method. type DiagnosticListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // DiagnosticUpdateOptions contains the optional parameters for the Diagnostic.Update method. type DiagnosticUpdateOptions struct { // placeholder for future optional parameters } // EmailTemplateCollection - Paged email template list representation. type EmailTemplateCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*EmailTemplateContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type EmailTemplateCollection. func (e EmailTemplateCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", e.Count) populate(objectMap, "nextLink", e.NextLink) populate(objectMap, "value", e.Value) return json.Marshal(objectMap) } // EmailTemplateContract - Email Template details. type EmailTemplateContract struct { Resource // Email Template entity contract properties. Properties *EmailTemplateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type EmailTemplateContract. func (e EmailTemplateContract) MarshalJSON() ([]byte, error) { objectMap := e.Resource.marshalInternal() populate(objectMap, "properties", e.Properties) return json.Marshal(objectMap) } // EmailTemplateContractProperties - Email Template Contract properties. type EmailTemplateContractProperties struct { // REQUIRED; Email Template Body. This should be a valid XDocument Body *string `json:"body,omitempty"` // REQUIRED; Subject of the Template. Subject *string `json:"subject,omitempty"` // Description of the Email Template. Description *string `json:"description,omitempty"` // Email Template Parameter values. Parameters []*EmailTemplateParametersContractProperties `json:"parameters,omitempty"` // Title of the Template. Title *string `json:"title,omitempty"` // READ-ONLY; Whether the template is the default template provided by Api Management or has been edited. IsDefault *bool `json:"isDefault,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type EmailTemplateContractProperties. func (e EmailTemplateContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "body", e.Body) populate(objectMap, "description", e.Description) populate(objectMap, "isDefault", e.IsDefault) populate(objectMap, "parameters", e.Parameters) populate(objectMap, "subject", e.Subject) populate(objectMap, "title", e.Title) return json.Marshal(objectMap) } // EmailTemplateCreateOrUpdateOptions contains the optional parameters for the EmailTemplate.CreateOrUpdate method. type EmailTemplateCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // EmailTemplateDeleteOptions contains the optional parameters for the EmailTemplate.Delete method. type EmailTemplateDeleteOptions struct { // placeholder for future optional parameters } // EmailTemplateGetEntityTagOptions contains the optional parameters for the EmailTemplate.GetEntityTag method. type EmailTemplateGetEntityTagOptions struct { // placeholder for future optional parameters } // EmailTemplateGetOptions contains the optional parameters for the EmailTemplate.Get method. type EmailTemplateGetOptions struct { // placeholder for future optional parameters } // EmailTemplateListByServiceOptions contains the optional parameters for the EmailTemplate.ListByService method. type EmailTemplateListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // EmailTemplateParametersContractProperties - Email Template Parameter contract. type EmailTemplateParametersContractProperties struct { // Template parameter description. Description *string `json:"description,omitempty"` // Template parameter name. Name *string `json:"name,omitempty"` // Template parameter title. Title *string `json:"title,omitempty"` } // EmailTemplateUpdateOptions contains the optional parameters for the EmailTemplate.Update method. type EmailTemplateUpdateOptions struct { // placeholder for future optional parameters } // EmailTemplateUpdateParameterProperties - Email Template Update Contract properties. type EmailTemplateUpdateParameterProperties struct { // Email Template Body. This should be a valid XDocument Body *string `json:"body,omitempty"` // Description of the Email Template. Description *string `json:"description,omitempty"` // Email Template Parameter values. Parameters []*EmailTemplateParametersContractProperties `json:"parameters,omitempty"` // Subject of the Template. Subject *string `json:"subject,omitempty"` // Title of the Template. Title *string `json:"title,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type EmailTemplateUpdateParameterProperties. func (e EmailTemplateUpdateParameterProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "body", e.Body) populate(objectMap, "description", e.Description) populate(objectMap, "parameters", e.Parameters) populate(objectMap, "subject", e.Subject) populate(objectMap, "title", e.Title) return json.Marshal(objectMap) } // EmailTemplateUpdateParameters - Email Template update Parameters. type EmailTemplateUpdateParameters struct { // Email Template Update contract properties. Properties *EmailTemplateUpdateParameterProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type EmailTemplateUpdateParameters. func (e EmailTemplateUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", e.Properties) return json.Marshal(objectMap) } // ErrorFieldContract - Error Field contract. type ErrorFieldContract struct { // Property level error code. Code *string `json:"code,omitempty"` // Human-readable representation of property-level error. Message *string `json:"message,omitempty"` // Property name. Target *string `json:"target,omitempty"` } // ErrorResponse - Error Response. // Implements the error and azcore.HTTPResponse interfaces. type ErrorResponse struct { raw string // Properties of the Error Response. InnerError *ErrorResponseBody `json:"error,omitempty"` } // Error implements the error interface for type ErrorResponse. // The contents of the error text are not contractual and subject to change. func (e ErrorResponse) Error() string { return e.raw } // ErrorResponseBody - Error Body contract. type ErrorResponseBody struct { // Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response. Code *string `json:"code,omitempty"` // The list of invalid fields send in request, in case of validation error. Details []*ErrorFieldContract `json:"details,omitempty"` // Human-readable representation of the error. Message *string `json:"message,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ErrorResponseBody. func (e ErrorResponseBody) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "code", e.Code) populate(objectMap, "details", e.Details) populate(objectMap, "message", e.Message) return json.Marshal(objectMap) } // GatewayAPICreateOrUpdateOptions contains the optional parameters for the GatewayAPI.CreateOrUpdate method. type GatewayAPICreateOrUpdateOptions struct { Parameters *AssociationContract } // GatewayAPIDeleteOptions contains the optional parameters for the GatewayAPI.Delete method. type GatewayAPIDeleteOptions struct { // placeholder for future optional parameters } // GatewayAPIGetEntityTagOptions contains the optional parameters for the GatewayAPI.GetEntityTag method. type GatewayAPIGetEntityTagOptions struct { // placeholder for future optional parameters } // GatewayAPIListByServiceOptions contains the optional parameters for the GatewayAPI.ListByService method. type GatewayAPIListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // GatewayCertificateAuthorityCollection - Paged Gateway certificate authority list representation. type GatewayCertificateAuthorityCollection struct { // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*GatewayCertificateAuthorityContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type GatewayCertificateAuthorityCollection. func (g GatewayCertificateAuthorityCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", g.NextLink) populate(objectMap, "value", g.Value) return json.Marshal(objectMap) } // GatewayCertificateAuthorityContract - Gateway certificate authority details. type GatewayCertificateAuthorityContract struct { Resource // Gateway certificate authority details. Properties *GatewayCertificateAuthorityContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GatewayCertificateAuthorityContract. func (g GatewayCertificateAuthorityContract) MarshalJSON() ([]byte, error) { objectMap := g.Resource.marshalInternal() populate(objectMap, "properties", g.Properties) return json.Marshal(objectMap) } // GatewayCertificateAuthorityContractProperties - Gateway certificate authority details. type GatewayCertificateAuthorityContractProperties struct { // Determines whether certificate authority is trusted. IsTrusted *bool `json:"isTrusted,omitempty"` } // GatewayCertificateAuthorityCreateOrUpdateOptions contains the optional parameters for the GatewayCertificateAuthority.CreateOrUpdate method. type GatewayCertificateAuthorityCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // GatewayCertificateAuthorityDeleteOptions contains the optional parameters for the GatewayCertificateAuthority.Delete method. type GatewayCertificateAuthorityDeleteOptions struct { // placeholder for future optional parameters } // GatewayCertificateAuthorityGetEntityTagOptions contains the optional parameters for the GatewayCertificateAuthority.GetEntityTag method. type GatewayCertificateAuthorityGetEntityTagOptions struct { // placeholder for future optional parameters } // GatewayCertificateAuthorityGetOptions contains the optional parameters for the GatewayCertificateAuthority.Get method. type GatewayCertificateAuthorityGetOptions struct { // placeholder for future optional parameters } // GatewayCertificateAuthorityListByServiceOptions contains the optional parameters for the GatewayCertificateAuthority.ListByService method. type GatewayCertificateAuthorityListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | eq, // ne | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // GatewayCollection - Paged Gateway list representation. type GatewayCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*GatewayContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type GatewayCollection. func (g GatewayCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", g.Count) populate(objectMap, "nextLink", g.NextLink) populate(objectMap, "value", g.Value) return json.Marshal(objectMap) } // GatewayContract - Gateway details. type GatewayContract struct { Resource // Gateway details. Properties *GatewayContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GatewayContract. func (g GatewayContract) MarshalJSON() ([]byte, error) { objectMap := g.Resource.marshalInternal() populate(objectMap, "properties", g.Properties) return json.Marshal(objectMap) } // GatewayContractProperties - Properties of the Gateway contract. type GatewayContractProperties struct { // Gateway description Description *string `json:"description,omitempty"` // Gateway location. LocationData *ResourceLocationDataContract `json:"locationData,omitempty"` } // GatewayCreateOrUpdateOptions contains the optional parameters for the Gateway.CreateOrUpdate method. type GatewayCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // GatewayDeleteOptions contains the optional parameters for the Gateway.Delete method. type GatewayDeleteOptions struct { // placeholder for future optional parameters } // GatewayGenerateTokenOptions contains the optional parameters for the Gateway.GenerateToken method. type GatewayGenerateTokenOptions struct { // placeholder for future optional parameters } // GatewayGetEntityTagOptions contains the optional parameters for the Gateway.GetEntityTag method. type GatewayGetEntityTagOptions struct { // placeholder for future optional parameters } // GatewayGetOptions contains the optional parameters for the Gateway.Get method. type GatewayGetOptions struct { // placeholder for future optional parameters } // GatewayHostnameConfigurationCollection - Paged Gateway hostname configuration list representation. type GatewayHostnameConfigurationCollection struct { // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*GatewayHostnameConfigurationContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type GatewayHostnameConfigurationCollection. func (g GatewayHostnameConfigurationCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", g.NextLink) populate(objectMap, "value", g.Value) return json.Marshal(objectMap) } // GatewayHostnameConfigurationContract - Gateway hostname configuration details. type GatewayHostnameConfigurationContract struct { Resource // Gateway hostname configuration details. Properties *GatewayHostnameConfigurationContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GatewayHostnameConfigurationContract. func (g GatewayHostnameConfigurationContract) MarshalJSON() ([]byte, error) { objectMap := g.Resource.marshalInternal() populate(objectMap, "properties", g.Properties) return json.Marshal(objectMap) } // GatewayHostnameConfigurationContractProperties - Gateway hostname configuration details. type GatewayHostnameConfigurationContractProperties struct { // Identifier of Certificate entity that will be used for TLS connection establishment CertificateID *string `json:"certificateId,omitempty"` // Specifies if HTTP/2.0 is supported HTTP2Enabled *bool `json:"http2Enabled,omitempty"` // Hostname value. Supports valid domain name, partial or full wildcard Hostname *string `json:"hostname,omitempty"` // Determines whether gateway requests client certificate NegotiateClientCertificate *bool `json:"negotiateClientCertificate,omitempty"` // Specifies if TLS 1.0 is supported Tls10Enabled *bool `json:"tls10Enabled,omitempty"` // Specifies if TLS 1.1 is supported Tls11Enabled *bool `json:"tls11Enabled,omitempty"` } // GatewayHostnameConfigurationCreateOrUpdateOptions contains the optional parameters for the GatewayHostnameConfiguration.CreateOrUpdate method. type GatewayHostnameConfigurationCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // GatewayHostnameConfigurationDeleteOptions contains the optional parameters for the GatewayHostnameConfiguration.Delete method. type GatewayHostnameConfigurationDeleteOptions struct { // placeholder for future optional parameters } // GatewayHostnameConfigurationGetEntityTagOptions contains the optional parameters for the GatewayHostnameConfiguration.GetEntityTag method. type GatewayHostnameConfigurationGetEntityTagOptions struct { // placeholder for future optional parameters } // GatewayHostnameConfigurationGetOptions contains the optional parameters for the GatewayHostnameConfiguration.Get method. type GatewayHostnameConfigurationGetOptions struct { // placeholder for future optional parameters } // GatewayHostnameConfigurationListByServiceOptions contains the optional parameters for the GatewayHostnameConfiguration.ListByService method. type GatewayHostnameConfigurationListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| hostname | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, // endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // GatewayKeyRegenerationRequestContract - Gateway key regeneration request contract properties. type GatewayKeyRegenerationRequestContract struct { // REQUIRED; The Key being regenerated. KeyType *KeyType `json:"keyType,omitempty"` } // GatewayKeysContract - Gateway authentication keys. type GatewayKeysContract struct { // Primary gateway key. Primary *string `json:"primary,omitempty"` // Secondary gateway key. Secondary *string `json:"secondary,omitempty"` } // GatewayListByServiceOptions contains the optional parameters for the Gateway.ListByService method. type GatewayListByServiceOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| region | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, // endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // GatewayListKeysOptions contains the optional parameters for the Gateway.ListKeys method. type GatewayListKeysOptions struct { // placeholder for future optional parameters } // GatewayRegenerateKeyOptions contains the optional parameters for the Gateway.RegenerateKey method. type GatewayRegenerateKeyOptions struct { // placeholder for future optional parameters } // GatewayTokenContract - Gateway access token. type GatewayTokenContract struct { // Shared Access Authentication token value for the Gateway. Value *string `json:"value,omitempty"` } // GatewayTokenRequestContract - Gateway token request contract properties. type GatewayTokenRequestContract struct { // 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. Expiry *time.Time `json:"expiry,omitempty"` // REQUIRED; The Key to be used to generate gateway token. KeyType *KeyType `json:"keyType,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GatewayTokenRequestContract. func (g GatewayTokenRequestContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "expiry", (*timeRFC3339)(g.Expiry)) populate(objectMap, "keyType", g.KeyType) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type GatewayTokenRequestContract. func (g *GatewayTokenRequestContract) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "expiry": var aux timeRFC3339 err = unpopulate(val, &aux) g.Expiry = (*time.Time)(&aux) delete(rawMsg, key) case "keyType": err = unpopulate(val, &g.KeyType) delete(rawMsg, key) } if err != nil { return err } } return nil } // GatewayUpdateOptions contains the optional parameters for the Gateway.Update method. type GatewayUpdateOptions struct { // placeholder for future optional parameters } // GenerateSsoURLResult - Generate SSO Url operations response details. type GenerateSsoURLResult struct { // Redirect Url containing the SSO URL value. Value *string `json:"value,omitempty"` } // GroupCollection - Paged Group list representation. type GroupCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*GroupContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GroupCollection. func (g GroupCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", g.Count) populate(objectMap, "nextLink", g.NextLink) populate(objectMap, "value", g.Value) return json.Marshal(objectMap) } // GroupContract - Contract details. type GroupContract struct { Resource // Group entity contract properties. Properties *GroupContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GroupContract. func (g GroupContract) MarshalJSON() ([]byte, error) { objectMap := g.Resource.marshalInternal() populate(objectMap, "properties", g.Properties) return json.Marshal(objectMap) } // GroupContractProperties - Group contract Properties. type GroupContractProperties struct { // REQUIRED; Group name. DisplayName *string `json:"displayName,omitempty"` // Group description. Can contain HTML formatting tags. Description *string `json:"description,omitempty"` // 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. ExternalID *string `json:"externalId,omitempty"` // Group type. Type *GroupType `json:"type,omitempty"` // READ-ONLY; true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false. BuiltIn *bool `json:"builtIn,omitempty" azure:"ro"` } // GroupCreateOrUpdateOptions contains the optional parameters for the Group.CreateOrUpdate method. type GroupCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // GroupCreateParameters - Parameters supplied to the Create Group operation. type GroupCreateParameters struct { // Properties supplied to Create Group operation. Properties *GroupCreateParametersProperties `json:"properties,omitempty"` } // GroupCreateParametersProperties - Parameters supplied to the Create Group operation. type GroupCreateParametersProperties struct { // REQUIRED; Group name. DisplayName *string `json:"displayName,omitempty"` // Group description. Description *string `json:"description,omitempty"` // 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. ExternalID *string `json:"externalId,omitempty"` // Group type. Type *GroupType `json:"type,omitempty"` } // GroupDeleteOptions contains the optional parameters for the Group.Delete method. type GroupDeleteOptions struct { // placeholder for future optional parameters } // GroupGetEntityTagOptions contains the optional parameters for the Group.GetEntityTag method. type GroupGetEntityTagOptions struct { // placeholder for future optional parameters } // GroupGetOptions contains the optional parameters for the Group.Get method. type GroupGetOptions struct { // placeholder for future optional parameters } // GroupListByServiceOptions contains the optional parameters for the Group.ListByService method. type GroupListByServiceOptions struct { // | 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 |
| externalId | filter | eq | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // GroupUpdateOptions contains the optional parameters for the Group.Update method. type GroupUpdateOptions struct { // placeholder for future optional parameters } // GroupUpdateParameters - Parameters supplied to the Update Group operation. type GroupUpdateParameters struct { // Group entity update contract properties. Properties *GroupUpdateParametersProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type GroupUpdateParameters. func (g GroupUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", g.Properties) return json.Marshal(objectMap) } // GroupUpdateParametersProperties - Parameters supplied to the Update Group operation. type GroupUpdateParametersProperties struct { // Group description. Description *string `json:"description,omitempty"` // Group name. DisplayName *string `json:"displayName,omitempty"` // 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. ExternalID *string `json:"externalId,omitempty"` // Group type. Type *GroupType `json:"type,omitempty"` } // GroupUserCheckEntityExistsOptions contains the optional parameters for the GroupUser.CheckEntityExists method. type GroupUserCheckEntityExistsOptions struct { // placeholder for future optional parameters } // GroupUserCreateOptions contains the optional parameters for the GroupUser.Create method. type GroupUserCreateOptions struct { // placeholder for future optional parameters } // GroupUserDeleteOptions contains the optional parameters for the GroupUser.Delete method. type GroupUserDeleteOptions struct { // placeholder for future optional parameters } // GroupUserListOptions contains the optional parameters for the GroupUser.List method. type GroupUserListOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // HTTPMessageDiagnostic - Http message diagnostic settings. type HTTPMessageDiagnostic struct { // Body logging settings. Body *BodyDiagnosticSettings `json:"body,omitempty"` // Data masking settings. DataMasking *DataMasking `json:"dataMasking,omitempty"` // Array of HTTP Headers to log. Headers []*string `json:"headers,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type HTTPMessageDiagnostic. func (h HTTPMessageDiagnostic) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "body", h.Body) populate(objectMap, "dataMasking", h.DataMasking) populate(objectMap, "headers", h.Headers) return json.Marshal(objectMap) } // HostnameConfiguration - Custom hostname configuration. type HostnameConfiguration struct { // REQUIRED; Hostname to configure on the Api Management service. HostName *string `json:"hostName,omitempty"` // REQUIRED; Hostname type. Type *HostnameType `json:"type,omitempty"` // Certificate information. Certificate *CertificateInformation `json:"certificate,omitempty"` // Certificate Password. CertificatePassword *string `json:"certificatePassword,omitempty"` // 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. DefaultSSLBinding *bool `json:"defaultSslBinding,omitempty"` // Base64 Encoded certificate. EncodedCertificate *string `json:"encodedCertificate,omitempty"` // System or User Assigned Managed identity clientId as generated by Azure AD, which has GET access to the keyVault containing the SSL certificate. IdentityClientID *string `json:"identityClientId,omitempty"` // 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 aka.ms/apimmsi. The secret should be of type application/x-pkcs12 KeyVaultID *string `json:"keyVaultId,omitempty"` // Specify true to always negotiate client certificate on the hostname. Default Value is false. NegotiateClientCertificate *bool `json:"negotiateClientCertificate,omitempty"` } // IdentityProviderBaseParameters - Identity Provider Base Parameter Properties. type IdentityProviderBaseParameters struct { // List of Allowed Tenants when configuring Azure Active Directory login. AllowedTenants []*string `json:"allowedTenants,omitempty"` // OpenID Connect discovery endpoint hostname for AAD or AAD B2C. Authority *string `json:"authority,omitempty"` // Password Reset Policy Name. Only applies to AAD B2C Identity Provider. PasswordResetPolicyName *string `json:"passwordResetPolicyName,omitempty"` // Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. ProfileEditingPolicyName *string `json:"profileEditingPolicyName,omitempty"` // Signin Policy Name. Only applies to AAD B2C Identity Provider. SigninPolicyName *string `json:"signinPolicyName,omitempty"` // The TenantId to use instead of Common when logging into Active Directory SigninTenant *string `json:"signinTenant,omitempty"` // Signup Policy Name. Only applies to AAD B2C Identity Provider. SignupPolicyName *string `json:"signupPolicyName,omitempty"` // Identity Provider Type identifier. Type *IdentityProviderType `json:"type,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderBaseParameters. func (i IdentityProviderBaseParameters) MarshalJSON() ([]byte, error) { objectMap := i.marshalInternal() return json.Marshal(objectMap) } func (i IdentityProviderBaseParameters) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "allowedTenants", i.AllowedTenants) populate(objectMap, "authority", i.Authority) populate(objectMap, "passwordResetPolicyName", i.PasswordResetPolicyName) populate(objectMap, "profileEditingPolicyName", i.ProfileEditingPolicyName) populate(objectMap, "signinPolicyName", i.SigninPolicyName) populate(objectMap, "signinTenant", i.SigninTenant) populate(objectMap, "signupPolicyName", i.SignupPolicyName) populate(objectMap, "type", i.Type) return objectMap } // IdentityProviderContract - Identity Provider details. type IdentityProviderContract struct { Resource // Identity Provider contract properties. Properties *IdentityProviderContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderContract. func (i IdentityProviderContract) MarshalJSON() ([]byte, error) { objectMap := i.Resource.marshalInternal() populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IdentityProviderContractProperties - The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be // used to enable access to the API Management service developer portal for all users. type IdentityProviderContractProperties struct { IdentityProviderBaseParameters // 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. ClientID *string `json:"clientId,omitempty"` // 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. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. ClientSecret *string `json:"clientSecret,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderContractProperties. func (i IdentityProviderContractProperties) MarshalJSON() ([]byte, error) { objectMap := i.IdentityProviderBaseParameters.marshalInternal() populate(objectMap, "clientId", i.ClientID) populate(objectMap, "clientSecret", i.ClientSecret) return json.Marshal(objectMap) } // IdentityProviderCreateContract - Identity Provider details. type IdentityProviderCreateContract struct { Resource // Identity Provider contract properties. Properties *IdentityProviderCreateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderCreateContract. func (i IdentityProviderCreateContract) MarshalJSON() ([]byte, error) { objectMap := i.Resource.marshalInternal() populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IdentityProviderCreateContractProperties - The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which // can be used to enable access to the API Management service developer portal for all users. type IdentityProviderCreateContractProperties struct { IdentityProviderBaseParameters // 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. ClientID *string `json:"clientId,omitempty"` // 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. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. ClientSecret *string `json:"clientSecret,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderCreateContractProperties. func (i IdentityProviderCreateContractProperties) MarshalJSON() ([]byte, error) { objectMap := i.IdentityProviderBaseParameters.marshalInternal() populate(objectMap, "clientId", i.ClientID) populate(objectMap, "clientSecret", i.ClientSecret) return json.Marshal(objectMap) } // IdentityProviderCreateOrUpdateOptions contains the optional parameters for the IdentityProvider.CreateOrUpdate method. type IdentityProviderCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // IdentityProviderDeleteOptions contains the optional parameters for the IdentityProvider.Delete method. type IdentityProviderDeleteOptions struct { // placeholder for future optional parameters } // IdentityProviderGetEntityTagOptions contains the optional parameters for the IdentityProvider.GetEntityTag method. type IdentityProviderGetEntityTagOptions struct { // placeholder for future optional parameters } // IdentityProviderGetOptions contains the optional parameters for the IdentityProvider.Get method. type IdentityProviderGetOptions struct { // placeholder for future optional parameters } // IdentityProviderList - List of all the Identity Providers configured on the service instance. type IdentityProviderList struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Identity Provider configuration values. Value []*IdentityProviderContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderList. func (i IdentityProviderList) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", i.Count) populate(objectMap, "nextLink", i.NextLink) populate(objectMap, "value", i.Value) return json.Marshal(objectMap) } // IdentityProviderListByServiceOptions contains the optional parameters for the IdentityProvider.ListByService method. type IdentityProviderListByServiceOptions struct { // placeholder for future optional parameters } // IdentityProviderListSecretsOptions contains the optional parameters for the IdentityProvider.ListSecrets method. type IdentityProviderListSecretsOptions struct { // placeholder for future optional parameters } // IdentityProviderUpdateOptions contains the optional parameters for the IdentityProvider.Update method. type IdentityProviderUpdateOptions struct { // placeholder for future optional parameters } // IdentityProviderUpdateParameters - Parameters supplied to update Identity Provider type IdentityProviderUpdateParameters struct { // Identity Provider update properties. Properties *IdentityProviderUpdateProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderUpdateParameters. func (i IdentityProviderUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IdentityProviderUpdateProperties - Parameters supplied to the Update Identity Provider operation. type IdentityProviderUpdateProperties struct { IdentityProviderBaseParameters // 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. ClientID *string `json:"clientId,omitempty"` // 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. ClientSecret *string `json:"clientSecret,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IdentityProviderUpdateProperties. func (i IdentityProviderUpdateProperties) MarshalJSON() ([]byte, error) { objectMap := i.IdentityProviderBaseParameters.marshalInternal() populate(objectMap, "clientId", i.ClientID) populate(objectMap, "clientSecret", i.ClientSecret) return json.Marshal(objectMap) } // IssueAttachmentCollection - Paged Issue Attachment list representation. type IssueAttachmentCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Issue Attachment values. Value []*IssueAttachmentContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type IssueAttachmentCollection. func (i IssueAttachmentCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", i.Count) populate(objectMap, "nextLink", i.NextLink) populate(objectMap, "value", i.Value) return json.Marshal(objectMap) } // IssueAttachmentContract - Issue Attachment Contract details. type IssueAttachmentContract struct { Resource // Properties of the Issue Attachment. Properties *IssueAttachmentContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueAttachmentContract. func (i IssueAttachmentContract) MarshalJSON() ([]byte, error) { objectMap := i.Resource.marshalInternal() populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IssueAttachmentContractProperties - Issue Attachment contract Properties. type IssueAttachmentContractProperties struct { // REQUIRED; An HTTP link or Base64-encoded binary data. Content *string `json:"content,omitempty"` // 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. ContentFormat *string `json:"contentFormat,omitempty"` // REQUIRED; Filename by which the binary data will be saved. Title *string `json:"title,omitempty"` } // IssueCollection - Paged Issue list representation. type IssueCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Issue values. Value []*IssueContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type IssueCollection. func (i IssueCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", i.Count) populate(objectMap, "nextLink", i.NextLink) populate(objectMap, "value", i.Value) return json.Marshal(objectMap) } // IssueCommentCollection - Paged Issue Comment list representation. type IssueCommentCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Issue Comment values. Value []*IssueCommentContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type IssueCommentCollection. func (i IssueCommentCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", i.Count) populate(objectMap, "nextLink", i.NextLink) populate(objectMap, "value", i.Value) return json.Marshal(objectMap) } // IssueCommentContract - Issue Comment Contract details. type IssueCommentContract struct { Resource // Properties of the Issue Comment. Properties *IssueCommentContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueCommentContract. func (i IssueCommentContract) MarshalJSON() ([]byte, error) { objectMap := i.Resource.marshalInternal() populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IssueCommentContractProperties - Issue Comment contract Properties. type IssueCommentContractProperties struct { // REQUIRED; Comment text. Text *string `json:"text,omitempty"` // REQUIRED; A resource identifier for the user who left the comment. UserID *string `json:"userId,omitempty"` // Date and time when the comment was created. CreatedDate *time.Time `json:"createdDate,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueCommentContractProperties. func (i IssueCommentContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "createdDate", (*timeRFC3339)(i.CreatedDate)) populate(objectMap, "text", i.Text) populate(objectMap, "userId", i.UserID) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type IssueCommentContractProperties. func (i *IssueCommentContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "createdDate": var aux timeRFC3339 err = unpopulate(val, &aux) i.CreatedDate = (*time.Time)(&aux) delete(rawMsg, key) case "text": err = unpopulate(val, &i.Text) delete(rawMsg, key) case "userId": err = unpopulate(val, &i.UserID) delete(rawMsg, key) } if err != nil { return err } } return nil } // IssueContract - Issue Contract details. type IssueContract struct { Resource // Properties of the Issue. Properties *IssueContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueContract. func (i IssueContract) MarshalJSON() ([]byte, error) { objectMap := i.Resource.marshalInternal() populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IssueContractBaseProperties - Issue contract Base Properties. type IssueContractBaseProperties struct { // A resource identifier for the API the issue was created for. APIID *string `json:"apiId,omitempty"` // Date and time when the issue was created. CreatedDate *time.Time `json:"createdDate,omitempty"` // Status of the issue. State *State `json:"state,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueContractBaseProperties. func (i IssueContractBaseProperties) MarshalJSON() ([]byte, error) { objectMap := i.marshalInternal() return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type IssueContractBaseProperties. func (i *IssueContractBaseProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } return i.unmarshalInternal(rawMsg) } func (i IssueContractBaseProperties) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "apiId", i.APIID) populate(objectMap, "createdDate", (*timeRFC3339)(i.CreatedDate)) populate(objectMap, "state", i.State) return objectMap } func (i *IssueContractBaseProperties) unmarshalInternal(rawMsg map[string]json.RawMessage) error { for key, val := range rawMsg { var err error switch key { case "apiId": err = unpopulate(val, &i.APIID) delete(rawMsg, key) case "createdDate": var aux timeRFC3339 err = unpopulate(val, &aux) i.CreatedDate = (*time.Time)(&aux) delete(rawMsg, key) case "state": err = unpopulate(val, &i.State) delete(rawMsg, key) } if err != nil { return err } } return nil } // IssueContractProperties - Issue contract Properties. type IssueContractProperties struct { IssueContractBaseProperties // REQUIRED; Text describing the issue. Description *string `json:"description,omitempty"` // REQUIRED; The issue title. Title *string `json:"title,omitempty"` // REQUIRED; A resource identifier for the user created the issue. UserID *string `json:"userId,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueContractProperties. func (i IssueContractProperties) MarshalJSON() ([]byte, error) { objectMap := i.IssueContractBaseProperties.marshalInternal() populate(objectMap, "description", i.Description) populate(objectMap, "title", i.Title) populate(objectMap, "userId", i.UserID) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type IssueContractProperties. func (i *IssueContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "description": err = unpopulate(val, &i.Description) delete(rawMsg, key) case "title": err = unpopulate(val, &i.Title) delete(rawMsg, key) case "userId": err = unpopulate(val, &i.UserID) delete(rawMsg, key) } if err != nil { return err } } return i.IssueContractBaseProperties.unmarshalInternal(rawMsg) } // IssueGetOptions contains the optional parameters for the Issue.Get method. type IssueGetOptions struct { // placeholder for future optional parameters } // IssueListByServiceOptions contains the optional parameters for the Issue.ListByService method. type IssueListByServiceOptions struct { // | 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 | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // IssueUpdateContract - Issue update Parameters. type IssueUpdateContract struct { // Issue entity Update contract properties. Properties *IssueUpdateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueUpdateContract. func (i IssueUpdateContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", i.Properties) return json.Marshal(objectMap) } // IssueUpdateContractProperties - Issue contract Update Properties. type IssueUpdateContractProperties struct { IssueContractBaseProperties // Text describing the issue. Description *string `json:"description,omitempty"` // The issue title. Title *string `json:"title,omitempty"` // A resource identifier for the user created the issue. UserID *string `json:"userId,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type IssueUpdateContractProperties. func (i IssueUpdateContractProperties) MarshalJSON() ([]byte, error) { objectMap := i.IssueContractBaseProperties.marshalInternal() populate(objectMap, "description", i.Description) populate(objectMap, "title", i.Title) populate(objectMap, "userId", i.UserID) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type IssueUpdateContractProperties. func (i *IssueUpdateContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "description": err = unpopulate(val, &i.Description) delete(rawMsg, key) case "title": err = unpopulate(val, &i.Title) delete(rawMsg, key) case "userId": err = unpopulate(val, &i.UserID) delete(rawMsg, key) } if err != nil { return err } } return i.IssueContractBaseProperties.unmarshalInternal(rawMsg) } // KeyVaultContractCreateProperties - Create keyVault contract details. type KeyVaultContractCreateProperties struct { // SystemAssignedIdentity or UserAssignedIdentity Client Id which will be used to access key vault secret. IdentityClientID *string `json:"identityClientId,omitempty"` // Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires Api Management service to be configured // with aka.ms/apimmsi SecretIdentifier *string `json:"secretIdentifier,omitempty"` } // KeyVaultContractProperties - KeyVault contract details. type KeyVaultContractProperties struct { KeyVaultContractCreateProperties // Last time sync and refresh status of secret from key vault. LastStatus *KeyVaultLastAccessStatusContractProperties `json:"lastStatus,omitempty"` } // KeyVaultLastAccessStatusContractProperties - Issue contract Update Properties. type KeyVaultLastAccessStatusContractProperties struct { // Last status code for sync and refresh of secret from key vault. Code *string `json:"code,omitempty"` // Details of the error else empty. Message *string `json:"message,omitempty"` // Last time secret was accessed. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. TimeStampUTC *time.Time `json:"timeStampUtc,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type KeyVaultLastAccessStatusContractProperties. func (k KeyVaultLastAccessStatusContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "code", k.Code) populate(objectMap, "message", k.Message) populate(objectMap, "timeStampUtc", (*timeRFC3339)(k.TimeStampUTC)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type KeyVaultLastAccessStatusContractProperties. func (k *KeyVaultLastAccessStatusContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "code": err = unpopulate(val, &k.Code) delete(rawMsg, key) case "message": err = unpopulate(val, &k.Message) delete(rawMsg, key) case "timeStampUtc": var aux timeRFC3339 err = unpopulate(val, &aux) k.TimeStampUTC = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return nil } // LoggerCollection - Paged Logger list representation. type LoggerCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Logger values. Value []*LoggerContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type LoggerCollection. func (l LoggerCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", l.Count) populate(objectMap, "nextLink", l.NextLink) populate(objectMap, "value", l.Value) return json.Marshal(objectMap) } // LoggerContract - Logger details. type LoggerContract struct { Resource // Logger entity contract properties. Properties *LoggerContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type LoggerContract. func (l LoggerContract) MarshalJSON() ([]byte, error) { objectMap := l.Resource.marshalInternal() populate(objectMap, "properties", l.Properties) return json.Marshal(objectMap) } // LoggerContractProperties - The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the // Logger entity supports logging API Management events to Azure Event Hubs. type LoggerContractProperties struct { // REQUIRED; Logger type. LoggerType *LoggerType `json:"loggerType,omitempty"` // The name and SendRule connection string of the event hub for azureEventHub logger. Instrumentation key for applicationInsights logger. Credentials map[string]*string `json:"credentials,omitempty"` // Logger description. Description *string `json:"description,omitempty"` // Whether records are buffered in the logger before publishing. Default is assumed to be true. IsBuffered *bool `json:"isBuffered,omitempty"` // Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource). ResourceID *string `json:"resourceId,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type LoggerContractProperties. func (l LoggerContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "credentials", l.Credentials) populate(objectMap, "description", l.Description) populate(objectMap, "isBuffered", l.IsBuffered) populate(objectMap, "loggerType", l.LoggerType) populate(objectMap, "resourceId", l.ResourceID) return json.Marshal(objectMap) } // LoggerCreateOrUpdateOptions contains the optional parameters for the Logger.CreateOrUpdate method. type LoggerCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // LoggerDeleteOptions contains the optional parameters for the Logger.Delete method. type LoggerDeleteOptions struct { // placeholder for future optional parameters } // LoggerGetEntityTagOptions contains the optional parameters for the Logger.GetEntityTag method. type LoggerGetEntityTagOptions struct { // placeholder for future optional parameters } // LoggerGetOptions contains the optional parameters for the Logger.Get method. type LoggerGetOptions struct { // placeholder for future optional parameters } // LoggerListByServiceOptions contains the optional parameters for the Logger.ListByService method. type LoggerListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // LoggerUpdateContract - Logger update contract. type LoggerUpdateContract struct { // Logger entity update contract properties. Properties *LoggerUpdateParameters `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type LoggerUpdateContract. func (l LoggerUpdateContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", l.Properties) return json.Marshal(objectMap) } // LoggerUpdateOptions contains the optional parameters for the Logger.Update method. type LoggerUpdateOptions struct { // placeholder for future optional parameters } // LoggerUpdateParameters - Parameters supplied to the Update Logger operation. type LoggerUpdateParameters struct { // Logger credentials. Credentials map[string]*string `json:"credentials,omitempty"` // Logger description. Description *string `json:"description,omitempty"` // Whether records are buffered in the logger before publishing. Default is assumed to be true. IsBuffered *bool `json:"isBuffered,omitempty"` // Logger type. LoggerType *LoggerType `json:"loggerType,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type LoggerUpdateParameters. func (l LoggerUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "credentials", l.Credentials) populate(objectMap, "description", l.Description) populate(objectMap, "isBuffered", l.IsBuffered) populate(objectMap, "loggerType", l.LoggerType) return json.Marshal(objectMap) } // NamedValueBeginCreateOrUpdateOptions contains the optional parameters for the NamedValue.BeginCreateOrUpdate method. type NamedValueBeginCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // NamedValueBeginRefreshSecretOptions contains the optional parameters for the NamedValue.BeginRefreshSecret method. type NamedValueBeginRefreshSecretOptions struct { // placeholder for future optional parameters } // NamedValueBeginUpdateOptions contains the optional parameters for the NamedValue.BeginUpdate method. type NamedValueBeginUpdateOptions struct { // placeholder for future optional parameters } // NamedValueCollection - Paged NamedValue list representation. type NamedValueCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*NamedValueContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueCollection. func (n NamedValueCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", n.Count) populate(objectMap, "nextLink", n.NextLink) populate(objectMap, "value", n.Value) return json.Marshal(objectMap) } // NamedValueContract - NamedValue details. type NamedValueContract struct { Resource // NamedValue entity contract properties. Properties *NamedValueContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueContract. func (n NamedValueContract) MarshalJSON() ([]byte, error) { objectMap := n.Resource.marshalInternal() populate(objectMap, "properties", n.Properties) return json.Marshal(objectMap) } // NamedValueContractProperties - NamedValue Contract properties. type NamedValueContractProperties struct { NamedValueEntityBaseParameters // REQUIRED; Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. DisplayName *string `json:"displayName,omitempty"` // KeyVault location details of the namedValue. KeyVault *KeyVaultContractProperties `json:"keyVault,omitempty"` // Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' // operations! Use '/listSecrets' POST request to get // the value. Value *string `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueContractProperties. func (n NamedValueContractProperties) MarshalJSON() ([]byte, error) { objectMap := n.NamedValueEntityBaseParameters.marshalInternal() populate(objectMap, "displayName", n.DisplayName) populate(objectMap, "keyVault", n.KeyVault) populate(objectMap, "value", n.Value) return json.Marshal(objectMap) } // NamedValueCreateContract - NamedValue details. type NamedValueCreateContract struct { Resource // NamedValue entity contract properties for PUT operation. Properties *NamedValueCreateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueCreateContract. func (n NamedValueCreateContract) MarshalJSON() ([]byte, error) { objectMap := n.Resource.marshalInternal() populate(objectMap, "properties", n.Properties) return json.Marshal(objectMap) } // NamedValueCreateContractProperties - NamedValue Contract properties. type NamedValueCreateContractProperties struct { NamedValueEntityBaseParameters // REQUIRED; Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. DisplayName *string `json:"displayName,omitempty"` // KeyVault location details of the namedValue. KeyVault *KeyVaultContractCreateProperties `json:"keyVault,omitempty"` // Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' // operations! Use '/listSecrets' POST request to get // the value. Value *string `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueCreateContractProperties. func (n NamedValueCreateContractProperties) MarshalJSON() ([]byte, error) { objectMap := n.NamedValueEntityBaseParameters.marshalInternal() populate(objectMap, "displayName", n.DisplayName) populate(objectMap, "keyVault", n.KeyVault) populate(objectMap, "value", n.Value) return json.Marshal(objectMap) } // NamedValueDeleteOptions contains the optional parameters for the NamedValue.Delete method. type NamedValueDeleteOptions struct { // placeholder for future optional parameters } // NamedValueEntityBaseParameters - NamedValue Entity Base Parameters set. type NamedValueEntityBaseParameters struct { // Determines whether the value is a secret and should be encrypted or not. Default value is false. Secret *bool `json:"secret,omitempty"` // Optional tags that when provided can be used to filter the NamedValue list. Tags []*string `json:"tags,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueEntityBaseParameters. func (n NamedValueEntityBaseParameters) MarshalJSON() ([]byte, error) { objectMap := n.marshalInternal() return json.Marshal(objectMap) } func (n NamedValueEntityBaseParameters) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "secret", n.Secret) populate(objectMap, "tags", n.Tags) return objectMap } // NamedValueGetEntityTagOptions contains the optional parameters for the NamedValue.GetEntityTag method. type NamedValueGetEntityTagOptions struct { // placeholder for future optional parameters } // NamedValueGetOptions contains the optional parameters for the NamedValue.Get method. type NamedValueGetOptions struct { // placeholder for future optional parameters } // NamedValueListByServiceOptions contains the optional parameters for the NamedValue.ListByService method. type NamedValueListByServiceOptions struct { // | 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 |
Filter *string // When set to true, the response contains only named value entities which failed refresh. IsKeyVaultRefreshFailed *bool // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // NamedValueListValueOptions contains the optional parameters for the NamedValue.ListValue method. type NamedValueListValueOptions struct { // placeholder for future optional parameters } // NamedValueSecretContract - Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. type NamedValueSecretContract struct { // This is secret value of the NamedValue entity. Value *string `json:"value,omitempty"` } // NamedValueUpdateParameterProperties - NamedValue Contract properties. type NamedValueUpdateParameterProperties struct { NamedValueEntityBaseParameters // Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. DisplayName *string `json:"displayName,omitempty"` // KeyVault location details of the namedValue. KeyVault *KeyVaultContractCreateProperties `json:"keyVault,omitempty"` // Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. Value *string `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueUpdateParameterProperties. func (n NamedValueUpdateParameterProperties) MarshalJSON() ([]byte, error) { objectMap := n.NamedValueEntityBaseParameters.marshalInternal() populate(objectMap, "displayName", n.DisplayName) populate(objectMap, "keyVault", n.KeyVault) populate(objectMap, "value", n.Value) return json.Marshal(objectMap) } // NamedValueUpdateParameters - NamedValue update Parameters. type NamedValueUpdateParameters struct { // NamedValue entity Update contract properties. Properties *NamedValueUpdateParameterProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NamedValueUpdateParameters. func (n NamedValueUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", n.Properties) return json.Marshal(objectMap) } // NetworkStatusContract - Network Status details. type NetworkStatusContract struct { // REQUIRED; Gets the list of Connectivity Status to the Resources on which the service depends upon. ConnectivityStatus []*ConnectivityStatusContract `json:"connectivityStatus,omitempty"` // REQUIRED; Gets the list of DNS servers IPV4 addresses. DNSServers []*string `json:"dnsServers,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NetworkStatusContract. func (n NetworkStatusContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "connectivityStatus", n.ConnectivityStatus) populate(objectMap, "dnsServers", n.DNSServers) return json.Marshal(objectMap) } // NetworkStatusContractByLocation - Network Status in the Location type NetworkStatusContractByLocation struct { // Location of service Location *string `json:"location,omitempty"` // Network status in Location NetworkStatus *NetworkStatusContract `json:"networkStatus,omitempty"` } // NetworkStatusListByLocationOptions contains the optional parameters for the NetworkStatus.ListByLocation method. type NetworkStatusListByLocationOptions struct { // placeholder for future optional parameters } // NetworkStatusListByServiceOptions contains the optional parameters for the NetworkStatus.ListByService method. type NetworkStatusListByServiceOptions struct { // placeholder for future optional parameters } // NotificationCollection - Paged Notification list representation. type NotificationCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*NotificationContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NotificationCollection. func (n NotificationCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", n.Count) populate(objectMap, "nextLink", n.NextLink) populate(objectMap, "value", n.Value) return json.Marshal(objectMap) } // NotificationContract - Notification details. type NotificationContract struct { Resource // Notification entity contract properties. Properties *NotificationContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type NotificationContract. func (n NotificationContract) MarshalJSON() ([]byte, error) { objectMap := n.Resource.marshalInternal() populate(objectMap, "properties", n.Properties) return json.Marshal(objectMap) } // NotificationContractProperties - Notification Contract properties. type NotificationContractProperties struct { // REQUIRED; Title of the Notification. Title *string `json:"title,omitempty"` // Description of the Notification. Description *string `json:"description,omitempty"` // Recipient Parameter values. Recipients *RecipientsContractProperties `json:"recipients,omitempty"` } // NotificationCreateOrUpdateOptions contains the optional parameters for the Notification.CreateOrUpdate method. type NotificationCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // NotificationGetOptions contains the optional parameters for the Notification.Get method. type NotificationGetOptions struct { // placeholder for future optional parameters } // NotificationListByServiceOptions contains the optional parameters for the Notification.ListByService method. type NotificationListByServiceOptions struct { // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // NotificationRecipientEmailCheckEntityExistsOptions contains the optional parameters for the NotificationRecipientEmail.CheckEntityExists method. type NotificationRecipientEmailCheckEntityExistsOptions struct { // placeholder for future optional parameters } // NotificationRecipientEmailCreateOrUpdateOptions contains the optional parameters for the NotificationRecipientEmail.CreateOrUpdate method. type NotificationRecipientEmailCreateOrUpdateOptions struct { // placeholder for future optional parameters } // NotificationRecipientEmailDeleteOptions contains the optional parameters for the NotificationRecipientEmail.Delete method. type NotificationRecipientEmailDeleteOptions struct { // placeholder for future optional parameters } // NotificationRecipientEmailListByNotificationOptions contains the optional parameters for the NotificationRecipientEmail.ListByNotification method. type NotificationRecipientEmailListByNotificationOptions struct { // placeholder for future optional parameters } // NotificationRecipientUserCheckEntityExistsOptions contains the optional parameters for the NotificationRecipientUser.CheckEntityExists method. type NotificationRecipientUserCheckEntityExistsOptions struct { // placeholder for future optional parameters } // NotificationRecipientUserCreateOrUpdateOptions contains the optional parameters for the NotificationRecipientUser.CreateOrUpdate method. type NotificationRecipientUserCreateOrUpdateOptions struct { // placeholder for future optional parameters } // NotificationRecipientUserDeleteOptions contains the optional parameters for the NotificationRecipientUser.Delete method. type NotificationRecipientUserDeleteOptions struct { // placeholder for future optional parameters } // NotificationRecipientUserListByNotificationOptions contains the optional parameters for the NotificationRecipientUser.ListByNotification method. type NotificationRecipientUserListByNotificationOptions struct { // placeholder for future optional parameters } // OAuth2AuthenticationSettingsContract - API OAuth2 Authentication settings details. type OAuth2AuthenticationSettingsContract struct { // OAuth authorization server identifier. AuthorizationServerID *string `json:"authorizationServerId,omitempty"` // operations scope. Scope *string `json:"scope,omitempty"` } // OpenIDAuthenticationSettingsContract - API OAuth2 Authentication settings details. type OpenIDAuthenticationSettingsContract struct { // How to send token to the server. BearerTokenSendingMethods []*BearerTokenSendingMethods `json:"bearerTokenSendingMethods,omitempty"` // OAuth authorization server identifier. OpenidProviderID *string `json:"openidProviderId,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OpenIDAuthenticationSettingsContract. func (o OpenIDAuthenticationSettingsContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "bearerTokenSendingMethods", o.BearerTokenSendingMethods) populate(objectMap, "openidProviderId", o.OpenidProviderID) return json.Marshal(objectMap) } // OpenIDConnectProviderCollection - Paged OpenIdProviders list representation. type OpenIDConnectProviderCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*OpenidConnectProviderContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OpenIDConnectProviderCollection. func (o OpenIDConnectProviderCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", o.Count) populate(objectMap, "nextLink", o.NextLink) populate(objectMap, "value", o.Value) return json.Marshal(objectMap) } // OpenIDConnectProviderCreateOrUpdateOptions contains the optional parameters for the OpenIDConnectProvider.CreateOrUpdate method. type OpenIDConnectProviderCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // OpenIDConnectProviderDeleteOptions contains the optional parameters for the OpenIDConnectProvider.Delete method. type OpenIDConnectProviderDeleteOptions struct { // placeholder for future optional parameters } // OpenIDConnectProviderGetEntityTagOptions contains the optional parameters for the OpenIDConnectProvider.GetEntityTag method. type OpenIDConnectProviderGetEntityTagOptions struct { // placeholder for future optional parameters } // OpenIDConnectProviderGetOptions contains the optional parameters for the OpenIDConnectProvider.Get method. type OpenIDConnectProviderGetOptions struct { // placeholder for future optional parameters } // OpenIDConnectProviderListByServiceOptions contains the optional parameters for the OpenIDConnectProvider.ListByService method. type OpenIDConnectProviderListByServiceOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // OpenIDConnectProviderListSecretsOptions contains the optional parameters for the OpenIDConnectProvider.ListSecrets method. type OpenIDConnectProviderListSecretsOptions struct { // placeholder for future optional parameters } // OpenIDConnectProviderUpdateOptions contains the optional parameters for the OpenIDConnectProvider.Update method. type OpenIDConnectProviderUpdateOptions struct { // placeholder for future optional parameters } // OpenidConnectProviderContract - OpenId Connect Provider details. type OpenidConnectProviderContract struct { Resource // OpenId Connect Provider contract properties. Properties *OpenidConnectProviderContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OpenidConnectProviderContract. func (o OpenidConnectProviderContract) MarshalJSON() ([]byte, error) { objectMap := o.Resource.marshalInternal() populate(objectMap, "properties", o.Properties) return json.Marshal(objectMap) } // OpenidConnectProviderContractProperties - OpenID Connect Providers Contract. type OpenidConnectProviderContractProperties struct { // REQUIRED; Client ID of developer console which is the client application. ClientID *string `json:"clientId,omitempty"` // REQUIRED; User-friendly OpenID Connect Provider name. DisplayName *string `json:"displayName,omitempty"` // REQUIRED; Metadata endpoint URI. MetadataEndpoint *string `json:"metadataEndpoint,omitempty"` // Client Secret of developer console which is the client application. ClientSecret *string `json:"clientSecret,omitempty"` // User-friendly description of OpenID Connect Provider. Description *string `json:"description,omitempty"` } // OpenidConnectProviderUpdateContract - Parameters supplied to the Update OpenID Connect Provider operation. type OpenidConnectProviderUpdateContract struct { // OpenId Connect Provider Update contract properties. Properties *OpenidConnectProviderUpdateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OpenidConnectProviderUpdateContract. func (o OpenidConnectProviderUpdateContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", o.Properties) return json.Marshal(objectMap) } // OpenidConnectProviderUpdateContractProperties - Parameters supplied to the Update OpenID Connect Provider operation. type OpenidConnectProviderUpdateContractProperties struct { // Client ID of developer console which is the client application. ClientID *string `json:"clientId,omitempty"` // Client Secret of developer console which is the client application. ClientSecret *string `json:"clientSecret,omitempty"` // User-friendly description of OpenID Connect Provider. Description *string `json:"description,omitempty"` // User-friendly OpenID Connect Provider name. DisplayName *string `json:"displayName,omitempty"` // Metadata endpoint URI. MetadataEndpoint *string `json:"metadataEndpoint,omitempty"` } // Operation - REST API operation type Operation struct { // The object that describes the operation. Display *OperationDisplay `json:"display,omitempty"` // Operation name: {provider}/{resource}/{operation} Name *string `json:"name,omitempty"` // The operation origin. Origin *string `json:"origin,omitempty"` // The operation properties. Properties map[string]interface{} `json:"properties,omitempty"` } // OperationCollection - Paged Operation list representation. type OperationCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*OperationContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type OperationCollection. func (o OperationCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", o.Count) populate(objectMap, "nextLink", o.NextLink) populate(objectMap, "value", o.Value) return json.Marshal(objectMap) } // OperationContract - Api Operation details. type OperationContract struct { Resource // Properties of the Operation Contract. Properties *OperationContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationContract. func (o OperationContract) MarshalJSON() ([]byte, error) { objectMap := o.Resource.marshalInternal() populate(objectMap, "properties", o.Properties) return json.Marshal(objectMap) } // OperationContractProperties - Operation Contract Properties type OperationContractProperties struct { OperationEntityBaseContract // REQUIRED; Operation Name. DisplayName *string `json:"displayName,omitempty"` // REQUIRED; A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. Method *string `json:"method,omitempty"` // REQUIRED; Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date} URLTemplate *string `json:"urlTemplate,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationContractProperties. func (o OperationContractProperties) MarshalJSON() ([]byte, error) { objectMap := o.OperationEntityBaseContract.marshalInternal() populate(objectMap, "displayName", o.DisplayName) populate(objectMap, "method", o.Method) populate(objectMap, "urlTemplate", o.URLTemplate) return json.Marshal(objectMap) } // OperationDisplay - The object that describes the operation. type OperationDisplay struct { // Friendly name of the operation Description *string `json:"description,omitempty"` // Operation type: read, write, delete, listKeys/action, etc. Operation *string `json:"operation,omitempty"` // Friendly name of the resource provider Provider *string `json:"provider,omitempty"` // Resource type on which the operation is performed. Resource *string `json:"resource,omitempty"` } // OperationEntityBaseContract - Api Operation Entity Base Contract details. type OperationEntityBaseContract struct { // Description of the operation. May include HTML formatting tags. Description *string `json:"description,omitempty"` // Operation Policies Policies *string `json:"policies,omitempty"` // An entity containing request details. Request *RequestContract `json:"request,omitempty"` // Array of Operation responses. Responses []*ResponseContract `json:"responses,omitempty"` // Collection of URL template parameters. TemplateParameters []*ParameterContract `json:"templateParameters,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationEntityBaseContract. func (o OperationEntityBaseContract) MarshalJSON() ([]byte, error) { objectMap := o.marshalInternal() return json.Marshal(objectMap) } func (o OperationEntityBaseContract) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "description", o.Description) populate(objectMap, "policies", o.Policies) populate(objectMap, "request", o.Request) populate(objectMap, "responses", o.Responses) populate(objectMap, "templateParameters", o.TemplateParameters) return objectMap } // OperationListByTagsOptions contains the optional parameters for the Operation.ListByTags method. type OperationListByTagsOptions struct { // | 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 |
Filter *string // Include not tagged Operations. IncludeNotTaggedOperations *bool // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // OperationListResult - Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results. type OperationListResult struct { // URL to get the next set of operation list results if there are any. NextLink *string `json:"nextLink,omitempty"` // List of operations supported by the resource provider. Value []*Operation `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationListResult. func (o OperationListResult) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", o.NextLink) populate(objectMap, "value", o.Value) return json.Marshal(objectMap) } // OperationResultContract - Long Running Git Operation Results. type OperationResultContract struct { Resource // Properties of the Operation Contract. Properties *OperationResultContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationResultContract. func (o OperationResultContract) MarshalJSON() ([]byte, error) { objectMap := o.Resource.marshalInternal() populate(objectMap, "properties", o.Properties) return json.Marshal(objectMap) } // OperationResultContractProperties - Operation Result. type OperationResultContractProperties struct { // Error Body Contract Error *ErrorResponseBody `json:"error,omitempty"` // Operation result identifier. ID *string `json:"id,omitempty"` // Optional result info. ResultInfo *string `json:"resultInfo,omitempty"` // 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. Started *time.Time `json:"started,omitempty"` // Status of an async operation. Status *AsyncOperationStatus `json:"status,omitempty"` // 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. Updated *time.Time `json:"updated,omitempty"` // READ-ONLY; This property if only provided as part of the TenantConfigurationValidate operation. It contains the log the entities which will be updated/created/deleted // as part of the TenantConfigurationDeploy // operation. ActionLog []*OperationResultLogItemContract `json:"actionLog,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type OperationResultContractProperties. func (o OperationResultContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "actionLog", o.ActionLog) populate(objectMap, "error", o.Error) populate(objectMap, "id", o.ID) populate(objectMap, "resultInfo", o.ResultInfo) populate(objectMap, "started", (*timeRFC3339)(o.Started)) populate(objectMap, "status", o.Status) populate(objectMap, "updated", (*timeRFC3339)(o.Updated)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type OperationResultContractProperties. func (o *OperationResultContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "actionLog": err = unpopulate(val, &o.ActionLog) delete(rawMsg, key) case "error": err = unpopulate(val, &o.Error) delete(rawMsg, key) case "id": err = unpopulate(val, &o.ID) delete(rawMsg, key) case "resultInfo": err = unpopulate(val, &o.ResultInfo) delete(rawMsg, key) case "started": var aux timeRFC3339 err = unpopulate(val, &aux) o.Started = (*time.Time)(&aux) delete(rawMsg, key) case "status": err = unpopulate(val, &o.Status) delete(rawMsg, key) case "updated": var aux timeRFC3339 err = unpopulate(val, &aux) o.Updated = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return nil } // OperationResultLogItemContract - Log of the entity being created, updated or deleted. type OperationResultLogItemContract struct { // Action like create/update/delete. Action *string `json:"action,omitempty"` // Identifier of the entity being created/updated/deleted. ObjectKey *string `json:"objectKey,omitempty"` // The type of entity contract. ObjectType *string `json:"objectType,omitempty"` } // OperationTagResourceContractProperties - Operation Entity contract Properties. type OperationTagResourceContractProperties struct { // Identifier of the operation in form /operations/{operationId}. ID *string `json:"id,omitempty"` // READ-ONLY; Api Name. APIName *string `json:"apiName,omitempty" azure:"ro"` // READ-ONLY; Api Revision. APIRevision *string `json:"apiRevision,omitempty" azure:"ro"` // READ-ONLY; Api Version. APIVersion *string `json:"apiVersion,omitempty" azure:"ro"` // READ-ONLY; Operation Description. Description *string `json:"description,omitempty" azure:"ro"` // READ-ONLY; A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. Method *string `json:"method,omitempty" azure:"ro"` // READ-ONLY; Operation name. Name *string `json:"name,omitempty" azure:"ro"` // READ-ONLY; Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date} URLTemplate *string `json:"urlTemplate,omitempty" azure:"ro"` } // OperationUpdateContract - Api Operation Update Contract details. type OperationUpdateContract struct { // Properties of the API Operation entity that can be updated. Properties *OperationUpdateContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationUpdateContract. func (o OperationUpdateContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", o.Properties) return json.Marshal(objectMap) } // OperationUpdateContractProperties - Operation Update Contract Properties. type OperationUpdateContractProperties struct { OperationEntityBaseContract // Operation Name. DisplayName *string `json:"displayName,omitempty"` // A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. Method *string `json:"method,omitempty"` // Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date} URLTemplate *string `json:"urlTemplate,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type OperationUpdateContractProperties. func (o OperationUpdateContractProperties) MarshalJSON() ([]byte, error) { objectMap := o.OperationEntityBaseContract.marshalInternal() populate(objectMap, "displayName", o.DisplayName) populate(objectMap, "method", o.Method) populate(objectMap, "urlTemplate", o.URLTemplate) return json.Marshal(objectMap) } // ParameterContract - Operation parameters details. type ParameterContract struct { // REQUIRED; Parameter name. Name *string `json:"name,omitempty"` // REQUIRED; Parameter type. Type *string `json:"type,omitempty"` // Default parameter value. DefaultValue *string `json:"defaultValue,omitempty"` // Parameter description. Description *string `json:"description,omitempty"` // Specifies whether parameter is required or not. Required *bool `json:"required,omitempty"` // Parameter values. Values []*string `json:"values,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ParameterContract. func (p ParameterContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "defaultValue", p.DefaultValue) populate(objectMap, "description", p.Description) populate(objectMap, "name", p.Name) populate(objectMap, "required", p.Required) populate(objectMap, "type", p.Type) populate(objectMap, "values", p.Values) return json.Marshal(objectMap) } // PipelineDiagnosticSettings - Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. type PipelineDiagnosticSettings struct { // Diagnostic settings for request. Request *HTTPMessageDiagnostic `json:"request,omitempty"` // Diagnostic settings for response. Response *HTTPMessageDiagnostic `json:"response,omitempty"` } // PolicyCollection - The response of the list policy operation. type PolicyCollection struct { // Total record count number. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Policy Contract value. Value []*PolicyContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PolicyCollection. func (p PolicyCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", p.Count) populate(objectMap, "nextLink", p.NextLink) populate(objectMap, "value", p.Value) return json.Marshal(objectMap) } // PolicyContract - Policy Contract details. type PolicyContract struct { Resource // Properties of the Policy. Properties *PolicyContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PolicyContract. func (p PolicyContract) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // PolicyContractProperties - Policy contract Properties. type PolicyContractProperties struct { // REQUIRED; Contents of the Policy as defined by the format. Value *string `json:"value,omitempty"` // Format of the policyContent. Format *PolicyContentFormat `json:"format,omitempty"` } // PolicyCreateOrUpdateOptions contains the optional parameters for the Policy.CreateOrUpdate method. type PolicyCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // PolicyDeleteOptions contains the optional parameters for the Policy.Delete method. type PolicyDeleteOptions struct { // placeholder for future optional parameters } // PolicyDescriptionCollection - Descriptions of APIM policies. type PolicyDescriptionCollection struct { // Total record count number. Count *int64 `json:"count,omitempty"` // Descriptions of APIM policies. Value []*PolicyDescriptionContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PolicyDescriptionCollection. func (p PolicyDescriptionCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", p.Count) populate(objectMap, "value", p.Value) return json.Marshal(objectMap) } // PolicyDescriptionContract - Policy description details. type PolicyDescriptionContract struct { Resource // Policy description contract properties. Properties *PolicyDescriptionContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PolicyDescriptionContract. func (p PolicyDescriptionContract) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // PolicyDescriptionContractProperties - Policy description properties. type PolicyDescriptionContractProperties struct { // READ-ONLY; Policy description. Description *string `json:"description,omitempty" azure:"ro"` // READ-ONLY; Binary OR value of the Snippet scope. Scope *int64 `json:"scope,omitempty" azure:"ro"` } // PolicyDescriptionListByServiceOptions contains the optional parameters for the PolicyDescription.ListByService method. type PolicyDescriptionListByServiceOptions struct { // Policy scope. Scope *PolicyScopeContract } // PolicyGetEntityTagOptions contains the optional parameters for the Policy.GetEntityTag method. type PolicyGetEntityTagOptions struct { // placeholder for future optional parameters } // PolicyGetOptions contains the optional parameters for the Policy.Get method. type PolicyGetOptions struct { // Policy Export Format. Format *PolicyExportFormat } // PolicyListByServiceOptions contains the optional parameters for the Policy.ListByService method. type PolicyListByServiceOptions struct { // placeholder for future optional parameters } // PortalDelegationSettings - Delegation settings for a developer portal. type PortalDelegationSettings struct { Resource // Delegation settings contract properties. Properties *PortalDelegationSettingsProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PortalDelegationSettings. func (p PortalDelegationSettings) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // PortalDelegationSettingsProperties - Delegation settings contract properties. type PortalDelegationSettingsProperties struct { // Subscriptions delegation settings. Subscriptions *SubscriptionsDelegationSettingsProperties `json:"subscriptions,omitempty"` // A delegation Url. URL *string `json:"url,omitempty"` // User registration delegation settings. UserRegistration *RegistrationDelegationSettingsProperties `json:"userRegistration,omitempty"` // A base64-encoded validation key to validate, that a request is coming from Azure API Management. ValidationKey *string `json:"validationKey,omitempty"` } // PortalRevisionBeginCreateOrUpdateOptions contains the optional parameters for the PortalRevision.BeginCreateOrUpdate method. type PortalRevisionBeginCreateOrUpdateOptions struct { // placeholder for future optional parameters } // PortalRevisionBeginUpdateOptions contains the optional parameters for the PortalRevision.BeginUpdate method. type PortalRevisionBeginUpdateOptions struct { // placeholder for future optional parameters } // PortalRevisionCollection - Paged list of portal revisions. type PortalRevisionCollection struct { // READ-ONLY; Next page link, if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Collection of portal revisions. Value []*PortalRevisionContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type PortalRevisionCollection. func (p PortalRevisionCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", p.NextLink) populate(objectMap, "value", p.Value) return json.Marshal(objectMap) } // PortalRevisionContract - Portal revisions contract details. type PortalRevisionContract struct { Resource // Properties of the portal revisions. Properties *PortalRevisionContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PortalRevisionContract. func (p PortalRevisionContract) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } type PortalRevisionContractProperties struct { // Portal revision description. Description *string `json:"description,omitempty"` // Indicates if the Portal Revision is public. IsCurrent *bool `json:"isCurrent,omitempty"` // READ-ONLY; Portal revision creation date and time. CreatedDateTime *time.Time `json:"createdDateTime,omitempty" azure:"ro"` // READ-ONLY; Portal revision publishing status Status *PortalRevisionStatus `json:"status,omitempty" azure:"ro"` // READ-ONLY; Portal revision publishing status details. StatusDetails *string `json:"statusDetails,omitempty" azure:"ro"` // READ-ONLY; Last updated date and time. UpdatedDateTime *time.Time `json:"updatedDateTime,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type PortalRevisionContractProperties. func (p PortalRevisionContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "createdDateTime", (*timeRFC3339)(p.CreatedDateTime)) populate(objectMap, "description", p.Description) populate(objectMap, "isCurrent", p.IsCurrent) populate(objectMap, "status", p.Status) populate(objectMap, "statusDetails", p.StatusDetails) populate(objectMap, "updatedDateTime", (*timeRFC3339)(p.UpdatedDateTime)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type PortalRevisionContractProperties. func (p *PortalRevisionContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "createdDateTime": var aux timeRFC3339 err = unpopulate(val, &aux) p.CreatedDateTime = (*time.Time)(&aux) delete(rawMsg, key) case "description": err = unpopulate(val, &p.Description) delete(rawMsg, key) case "isCurrent": err = unpopulate(val, &p.IsCurrent) delete(rawMsg, key) case "status": err = unpopulate(val, &p.Status) delete(rawMsg, key) case "statusDetails": err = unpopulate(val, &p.StatusDetails) delete(rawMsg, key) case "updatedDateTime": var aux timeRFC3339 err = unpopulate(val, &aux) p.UpdatedDateTime = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return nil } // PortalRevisionGetEntityTagOptions contains the optional parameters for the PortalRevision.GetEntityTag method. type PortalRevisionGetEntityTagOptions struct { // placeholder for future optional parameters } // PortalRevisionGetOptions contains the optional parameters for the PortalRevision.Get method. type PortalRevisionGetOptions struct { // placeholder for future optional parameters } // PortalRevisionListByServiceOptions contains the optional parameters for the PortalRevision.ListByService method. type PortalRevisionListByServiceOptions struct { // | Field | Supported operators | Supported functions | // |-------------|------------------------|-----------------------------------| // // |name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith| // |description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith| // |isCurrent | eq, ne | | Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // PortalSettingValidationKeyContract - Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. type PortalSettingValidationKeyContract struct { // This is secret value of the validation key in portal settings. ValidationKey *string `json:"validationKey,omitempty"` } // PortalSettingsCollection - Descriptions of APIM policies. type PortalSettingsCollection struct { // Total record count number. Count *int64 `json:"count,omitempty"` // Descriptions of APIM policies. Value []*PortalSettingsContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PortalSettingsCollection. func (p PortalSettingsCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", p.Count) populate(objectMap, "value", p.Value) return json.Marshal(objectMap) } // PortalSettingsContract - Portal Settings for the Developer Portal. type PortalSettingsContract struct { Resource // Portal Settings contract properties. Properties *PortalSettingsContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PortalSettingsContract. func (p PortalSettingsContract) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // PortalSettingsContractProperties - Sign-in settings contract properties. type PortalSettingsContractProperties struct { // Redirect Anonymous users to the Sign-In page. Enabled *bool `json:"enabled,omitempty"` // Subscriptions delegation settings. Subscriptions *SubscriptionsDelegationSettingsProperties `json:"subscriptions,omitempty"` // Terms of service contract properties. TermsOfService *TermsOfServiceProperties `json:"termsOfService,omitempty"` // A delegation Url. URL *string `json:"url,omitempty"` // User registration delegation settings. UserRegistration *RegistrationDelegationSettingsProperties `json:"userRegistration,omitempty"` // A base64-encoded validation key to validate, that a request is coming from Azure API Management. ValidationKey *string `json:"validationKey,omitempty"` } // PortalSettingsListByServiceOptions contains the optional parameters for the PortalSettings.ListByService method. type PortalSettingsListByServiceOptions struct { // placeholder for future optional parameters } // PortalSigninSettingProperties - Sign-in settings contract properties. type PortalSigninSettingProperties struct { // Redirect Anonymous users to the Sign-In page. Enabled *bool `json:"enabled,omitempty"` } // PortalSigninSettings - Sign-In settings for the Developer Portal. type PortalSigninSettings struct { Resource // Sign-in settings contract properties. Properties *PortalSigninSettingProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PortalSigninSettings. func (p PortalSigninSettings) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // PortalSignupSettings - Sign-Up settings for a developer portal. type PortalSignupSettings struct { Resource // Sign-up settings contract properties. Properties *PortalSignupSettingsProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type PortalSignupSettings. func (p PortalSignupSettings) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // PortalSignupSettingsProperties - Sign-up settings contract properties. type PortalSignupSettingsProperties struct { // Allow users to sign up on a developer portal. Enabled *bool `json:"enabled,omitempty"` // Terms of service contract properties. TermsOfService *TermsOfServiceProperties `json:"termsOfService,omitempty"` } // ProductAPICheckEntityExistsOptions contains the optional parameters for the ProductAPI.CheckEntityExists method. type ProductAPICheckEntityExistsOptions struct { // placeholder for future optional parameters } // ProductAPICreateOrUpdateOptions contains the optional parameters for the ProductAPI.CreateOrUpdate method. type ProductAPICreateOrUpdateOptions struct { // placeholder for future optional parameters } // ProductAPIDeleteOptions contains the optional parameters for the ProductAPI.Delete method. type ProductAPIDeleteOptions struct { // placeholder for future optional parameters } // ProductAPIListByProductOptions contains the optional parameters for the ProductAPI.ListByProduct method. type ProductAPIListByProductOptions struct { // | 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 // |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ProductCollection - Paged Products list representation. type ProductCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*ProductContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ProductCollection. func (p ProductCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", p.Count) populate(objectMap, "nextLink", p.NextLink) populate(objectMap, "value", p.Value) return json.Marshal(objectMap) } // ProductContract - Product details. type ProductContract struct { Resource // Product entity contract properties. Properties *ProductContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ProductContract. func (p ProductContract) MarshalJSON() ([]byte, error) { objectMap := p.Resource.marshalInternal() populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // ProductContractProperties - Product profile. type ProductContractProperties struct { ProductEntityBaseParameters // REQUIRED; Product name. DisplayName *string `json:"displayName,omitempty"` } // ProductCreateOrUpdateOptions contains the optional parameters for the Product.CreateOrUpdate method. type ProductCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // ProductDeleteOptions contains the optional parameters for the Product.Delete method. type ProductDeleteOptions struct { // Delete existing subscriptions associated with the product or not. DeleteSubscriptions *bool } // ProductEntityBaseParameters - Product Entity Base Parameters type ProductEntityBaseParameters struct { // 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. ApprovalRequired *bool `json:"approvalRequired,omitempty"` // Product description. May include HTML formatting tags. Description *string `json:"description,omitempty"` // 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. State *ProductState `json:"state,omitempty"` // 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. SubscriptionRequired *bool `json:"subscriptionRequired,omitempty"` // 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. SubscriptionsLimit *int32 `json:"subscriptionsLimit,omitempty"` // 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. Terms *string `json:"terms,omitempty"` } // ProductGetEntityTagOptions contains the optional parameters for the Product.GetEntityTag method. type ProductGetEntityTagOptions struct { // placeholder for future optional parameters } // ProductGetOptions contains the optional parameters for the Product.Get method. type ProductGetOptions struct { // placeholder for future optional parameters } // ProductGroupCheckEntityExistsOptions contains the optional parameters for the ProductGroup.CheckEntityExists method. type ProductGroupCheckEntityExistsOptions struct { // placeholder for future optional parameters } // ProductGroupCreateOrUpdateOptions contains the optional parameters for the ProductGroup.CreateOrUpdate method. type ProductGroupCreateOrUpdateOptions struct { // placeholder for future optional parameters } // ProductGroupDeleteOptions contains the optional parameters for the ProductGroup.Delete method. type ProductGroupDeleteOptions struct { // placeholder for future optional parameters } // ProductGroupListByProductOptions contains the optional parameters for the ProductGroup.ListByProduct method. type ProductGroupListByProductOptions struct { // | Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, // le, eq, ne, gt, lt | |
| displayName | filter | eq, ne | |
| description | filter | eq, ne | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ProductListByServiceOptions contains the optional parameters for the Product.ListByService method. type ProductListByServiceOptions struct { // When set to true, the response contains an array of groups that have visibility to the product. The default is false. ExpandGroups *bool // | 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 | | |
Filter *string // Number of records to skip. Skip *int32 // Products which are part of a specific tag. Tags *string // Number of records to return. Top *int32 } // ProductListByTagsOptions contains the optional parameters for the Product.ListByTags method. type ProductListByTagsOptions struct { // | 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 |
Filter *string // Include not tagged Products. IncludeNotTaggedProducts *bool // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ProductPolicyCreateOrUpdateOptions contains the optional parameters for the ProductPolicy.CreateOrUpdate method. type ProductPolicyCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // ProductPolicyDeleteOptions contains the optional parameters for the ProductPolicy.Delete method. type ProductPolicyDeleteOptions struct { // placeholder for future optional parameters } // ProductPolicyGetEntityTagOptions contains the optional parameters for the ProductPolicy.GetEntityTag method. type ProductPolicyGetEntityTagOptions struct { // placeholder for future optional parameters } // ProductPolicyGetOptions contains the optional parameters for the ProductPolicy.Get method. type ProductPolicyGetOptions struct { // Policy Export Format. Format *PolicyExportFormat } // ProductPolicyListByProductOptions contains the optional parameters for the ProductPolicy.ListByProduct method. type ProductPolicyListByProductOptions struct { // placeholder for future optional parameters } // ProductSubscriptionsListOptions contains the optional parameters for the ProductSubscriptions.List method. type ProductSubscriptionsListOptions struct { // | 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 | | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ProductTagResourceContractProperties - Product profile. type ProductTagResourceContractProperties struct { ProductEntityBaseParameters // REQUIRED; Product name. Name *string `json:"name,omitempty"` // Identifier of the product in the form of /products/{productId} ID *string `json:"id,omitempty"` } // ProductUpdateOptions contains the optional parameters for the Product.Update method. type ProductUpdateOptions struct { // placeholder for future optional parameters } // ProductUpdateParameters - Product Update parameters. type ProductUpdateParameters struct { // Product entity Update contract properties. Properties *ProductUpdateProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ProductUpdateParameters. func (p ProductUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", p.Properties) return json.Marshal(objectMap) } // ProductUpdateProperties - Parameters supplied to the Update Product operation. type ProductUpdateProperties struct { ProductEntityBaseParameters // Product name. DisplayName *string `json:"displayName,omitempty"` } // QuotaByCounterKeysListByServiceOptions contains the optional parameters for the QuotaByCounterKeys.ListByService method. type QuotaByCounterKeysListByServiceOptions struct { // placeholder for future optional parameters } // QuotaByCounterKeysUpdateOptions contains the optional parameters for the QuotaByCounterKeys.Update method. type QuotaByCounterKeysUpdateOptions struct { // placeholder for future optional parameters } // QuotaByPeriodKeysGetOptions contains the optional parameters for the QuotaByPeriodKeys.Get method. type QuotaByPeriodKeysGetOptions struct { // placeholder for future optional parameters } // QuotaByPeriodKeysUpdateOptions contains the optional parameters for the QuotaByPeriodKeys.Update method. type QuotaByPeriodKeysUpdateOptions struct { // placeholder for future optional parameters } // QuotaCounterCollection - Paged Quota Counter list representation. type QuotaCounterCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Quota counter values. Value []*QuotaCounterContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type QuotaCounterCollection. func (q QuotaCounterCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", q.Count) populate(objectMap, "nextLink", q.NextLink) populate(objectMap, "value", q.Value) return json.Marshal(objectMap) } // QuotaCounterContract - Quota counter details. type QuotaCounterContract struct { // REQUIRED; The Key value of the Counter. Must not be empty. CounterKey *string `json:"counterKey,omitempty"` // 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. PeriodEndTime *time.Time `json:"periodEndTime,omitempty"` // REQUIRED; Identifier of the Period for which the counter was collected. Must not be empty. PeriodKey *string `json:"periodKey,omitempty"` // 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. PeriodStartTime *time.Time `json:"periodStartTime,omitempty"` // Quota Value Properties Value *QuotaCounterValueContractProperties `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type QuotaCounterContract. func (q QuotaCounterContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "counterKey", q.CounterKey) populate(objectMap, "periodEndTime", (*timeRFC3339)(q.PeriodEndTime)) populate(objectMap, "periodKey", q.PeriodKey) populate(objectMap, "periodStartTime", (*timeRFC3339)(q.PeriodStartTime)) populate(objectMap, "value", q.Value) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type QuotaCounterContract. func (q *QuotaCounterContract) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "counterKey": err = unpopulate(val, &q.CounterKey) delete(rawMsg, key) case "periodEndTime": var aux timeRFC3339 err = unpopulate(val, &aux) q.PeriodEndTime = (*time.Time)(&aux) delete(rawMsg, key) case "periodKey": err = unpopulate(val, &q.PeriodKey) delete(rawMsg, key) case "periodStartTime": var aux timeRFC3339 err = unpopulate(val, &aux) q.PeriodStartTime = (*time.Time)(&aux) delete(rawMsg, key) case "value": err = unpopulate(val, &q.Value) delete(rawMsg, key) } if err != nil { return err } } return nil } // QuotaCounterValueContract - Quota counter value details. type QuotaCounterValueContract struct { // Quota counter Value Properties. Value *QuotaCounterValueContractProperties `json:"value,omitempty"` } // QuotaCounterValueContractProperties - Quota counter value details. type QuotaCounterValueContractProperties struct { // Number of times Counter was called. CallsCount *int32 `json:"callsCount,omitempty"` // Data Transferred in KiloBytes. KbTransferred *float64 `json:"kbTransferred,omitempty"` } // QuotaCounterValueUpdateContract - Quota counter value details. type QuotaCounterValueUpdateContract struct { // Quota counter value details. Properties *QuotaCounterValueContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type QuotaCounterValueUpdateContract. func (q QuotaCounterValueUpdateContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", q.Properties) return json.Marshal(objectMap) } // RecipientEmailCollection - Paged Recipient User list representation. type RecipientEmailCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*RecipientEmailContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RecipientEmailCollection. func (r RecipientEmailCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", r.Count) populate(objectMap, "nextLink", r.NextLink) populate(objectMap, "value", r.Value) return json.Marshal(objectMap) } // RecipientEmailContract - Recipient Email details. type RecipientEmailContract struct { Resource // Recipient Email contract properties. Properties *RecipientEmailContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RecipientEmailContract. func (r RecipientEmailContract) MarshalJSON() ([]byte, error) { objectMap := r.Resource.marshalInternal() populate(objectMap, "properties", r.Properties) return json.Marshal(objectMap) } // RecipientEmailContractProperties - Recipient Email Contract Properties. type RecipientEmailContractProperties struct { // User Email subscribed to notification. Email *string `json:"email,omitempty"` } // RecipientUserCollection - Paged Recipient User list representation. type RecipientUserCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*RecipientUserContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RecipientUserCollection. func (r RecipientUserCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", r.Count) populate(objectMap, "nextLink", r.NextLink) populate(objectMap, "value", r.Value) return json.Marshal(objectMap) } // RecipientUserContract - Recipient User details. type RecipientUserContract struct { Resource // Recipient User entity contract properties. Properties *RecipientUsersContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RecipientUserContract. func (r RecipientUserContract) MarshalJSON() ([]byte, error) { objectMap := r.Resource.marshalInternal() populate(objectMap, "properties", r.Properties) return json.Marshal(objectMap) } // RecipientUsersContractProperties - Recipient User Contract Properties. type RecipientUsersContractProperties struct { // API Management UserId subscribed to notification. UserID *string `json:"userId,omitempty"` } // RecipientsContractProperties - Notification Parameter contract. type RecipientsContractProperties struct { // List of Emails subscribed for the notification. Emails []*string `json:"emails,omitempty"` // List of Users subscribed for the notification. Users []*string `json:"users,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RecipientsContractProperties. func (r RecipientsContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "emails", r.Emails) populate(objectMap, "users", r.Users) return json.Marshal(objectMap) } // RegionContract - Region profile. type RegionContract struct { // whether Region is deleted. IsDeleted *bool `json:"isDeleted,omitempty"` // whether Region is the master region. IsMasterRegion *bool `json:"isMasterRegion,omitempty"` // READ-ONLY; Region name. Name *string `json:"name,omitempty" azure:"ro"` } // RegionListByServiceOptions contains the optional parameters for the Region.ListByService method. type RegionListByServiceOptions struct { // placeholder for future optional parameters } // RegionListResult - Lists Regions operation response details. type RegionListResult struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Lists of Regions. Value []*RegionContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RegionListResult. func (r RegionListResult) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", r.Count) populate(objectMap, "nextLink", r.NextLink) populate(objectMap, "value", r.Value) return json.Marshal(objectMap) } // RegistrationDelegationSettingsProperties - User registration delegation settings properties. type RegistrationDelegationSettingsProperties struct { // Enable or disable delegation for user registration. Enabled *bool `json:"enabled,omitempty"` } // ReportCollection - Paged Report records list representation. type ReportCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*ReportRecordContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ReportCollection. func (r ReportCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", r.Count) populate(objectMap, "nextLink", r.NextLink) populate(objectMap, "value", r.Value) return json.Marshal(objectMap) } // ReportRecordContract - Report data. type ReportRecordContract struct { // API identifier path. /apis/{apiId} APIID *string `json:"apiId,omitempty"` // API region identifier. APIRegion *string `json:"apiRegion,omitempty"` // Average time it took to process request. APITimeAvg *float64 `json:"apiTimeAvg,omitempty"` // Maximum time it took to process request. APITimeMax *float64 `json:"apiTimeMax,omitempty"` // Minimum time it took to process request. APITimeMin *float64 `json:"apiTimeMin,omitempty"` // Bandwidth consumed. Bandwidth *int64 `json:"bandwidth,omitempty"` // Number of times when content was served from cache policy. CacheHitCount *int32 `json:"cacheHitCount,omitempty"` // Number of times content was fetched from backend. CacheMissCount *int32 `json:"cacheMissCount,omitempty"` // Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorized and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests CallCountBlocked *int32 `json:"callCountBlocked,omitempty"` // 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 CallCountFailed *int32 `json:"callCountFailed,omitempty"` // Number of other calls. CallCountOther *int32 `json:"callCountOther,omitempty"` // Number of successful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect CallCountSuccess *int32 `json:"callCountSuccess,omitempty"` // Total number of calls. CallCountTotal *int32 `json:"callCountTotal,omitempty"` // Country to which this record data is related. Country *string `json:"country,omitempty"` // 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). Interval *string `json:"interval,omitempty"` // Name depending on report endpoint specifies product, API, operation or developer name. Name *string `json:"name,omitempty"` // Operation identifier path. /apis/{apiId}/operations/{operationId} OperationID *string `json:"operationId,omitempty"` // Country region to which this record data is related. Region *string `json:"region,omitempty"` // Average time it took to process request on backend. ServiceTimeAvg *float64 `json:"serviceTimeAvg,omitempty"` // Maximum time it took to process request on backend. ServiceTimeMax *float64 `json:"serviceTimeMax,omitempty"` // Minimum time it took to process request on backend. ServiceTimeMin *float64 `json:"serviceTimeMin,omitempty"` // Subscription identifier path. /subscriptions/{subscriptionId} SubscriptionID *string `json:"subscriptionId,omitempty"` // Start of aggregation period. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. Timestamp *time.Time `json:"timestamp,omitempty"` // Zip code to which this record data is related. Zip *string `json:"zip,omitempty"` // READ-ONLY; Product identifier path. /products/{productId} ProductID *string `json:"productId,omitempty" azure:"ro"` // READ-ONLY; User identifier path. /users/{userId} UserID *string `json:"userId,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type ReportRecordContract. func (r ReportRecordContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "apiId", r.APIID) populate(objectMap, "apiRegion", r.APIRegion) populate(objectMap, "apiTimeAvg", r.APITimeAvg) populate(objectMap, "apiTimeMax", r.APITimeMax) populate(objectMap, "apiTimeMin", r.APITimeMin) populate(objectMap, "bandwidth", r.Bandwidth) populate(objectMap, "cacheHitCount", r.CacheHitCount) populate(objectMap, "cacheMissCount", r.CacheMissCount) populate(objectMap, "callCountBlocked", r.CallCountBlocked) populate(objectMap, "callCountFailed", r.CallCountFailed) populate(objectMap, "callCountOther", r.CallCountOther) populate(objectMap, "callCountSuccess", r.CallCountSuccess) populate(objectMap, "callCountTotal", r.CallCountTotal) populate(objectMap, "country", r.Country) populate(objectMap, "interval", r.Interval) populate(objectMap, "name", r.Name) populate(objectMap, "operationId", r.OperationID) populate(objectMap, "productId", r.ProductID) populate(objectMap, "region", r.Region) populate(objectMap, "serviceTimeAvg", r.ServiceTimeAvg) populate(objectMap, "serviceTimeMax", r.ServiceTimeMax) populate(objectMap, "serviceTimeMin", r.ServiceTimeMin) populate(objectMap, "subscriptionId", r.SubscriptionID) populate(objectMap, "timestamp", (*timeRFC3339)(r.Timestamp)) populate(objectMap, "userId", r.UserID) populate(objectMap, "zip", r.Zip) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type ReportRecordContract. func (r *ReportRecordContract) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "apiId": err = unpopulate(val, &r.APIID) delete(rawMsg, key) case "apiRegion": err = unpopulate(val, &r.APIRegion) delete(rawMsg, key) case "apiTimeAvg": err = unpopulate(val, &r.APITimeAvg) delete(rawMsg, key) case "apiTimeMax": err = unpopulate(val, &r.APITimeMax) delete(rawMsg, key) case "apiTimeMin": err = unpopulate(val, &r.APITimeMin) delete(rawMsg, key) case "bandwidth": err = unpopulate(val, &r.Bandwidth) delete(rawMsg, key) case "cacheHitCount": err = unpopulate(val, &r.CacheHitCount) delete(rawMsg, key) case "cacheMissCount": err = unpopulate(val, &r.CacheMissCount) delete(rawMsg, key) case "callCountBlocked": err = unpopulate(val, &r.CallCountBlocked) delete(rawMsg, key) case "callCountFailed": err = unpopulate(val, &r.CallCountFailed) delete(rawMsg, key) case "callCountOther": err = unpopulate(val, &r.CallCountOther) delete(rawMsg, key) case "callCountSuccess": err = unpopulate(val, &r.CallCountSuccess) delete(rawMsg, key) case "callCountTotal": err = unpopulate(val, &r.CallCountTotal) delete(rawMsg, key) case "country": err = unpopulate(val, &r.Country) delete(rawMsg, key) case "interval": err = unpopulate(val, &r.Interval) delete(rawMsg, key) case "name": err = unpopulate(val, &r.Name) delete(rawMsg, key) case "operationId": err = unpopulate(val, &r.OperationID) delete(rawMsg, key) case "productId": err = unpopulate(val, &r.ProductID) delete(rawMsg, key) case "region": err = unpopulate(val, &r.Region) delete(rawMsg, key) case "serviceTimeAvg": err = unpopulate(val, &r.ServiceTimeAvg) delete(rawMsg, key) case "serviceTimeMax": err = unpopulate(val, &r.ServiceTimeMax) delete(rawMsg, key) case "serviceTimeMin": err = unpopulate(val, &r.ServiceTimeMin) delete(rawMsg, key) case "subscriptionId": err = unpopulate(val, &r.SubscriptionID) delete(rawMsg, key) case "timestamp": var aux timeRFC3339 err = unpopulate(val, &aux) r.Timestamp = (*time.Time)(&aux) delete(rawMsg, key) case "userId": err = unpopulate(val, &r.UserID) delete(rawMsg, key) case "zip": err = unpopulate(val, &r.Zip) delete(rawMsg, key) } if err != nil { return err } } return nil } // ReportsListByAPIOptions contains the optional parameters for the Reports.ListByAPI method. type ReportsListByAPIOptions struct { // OData order by query option. Orderby *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListByGeoOptions contains the optional parameters for the Reports.ListByGeo method. type ReportsListByGeoOptions struct { // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListByOperationOptions contains the optional parameters for the Reports.ListByOperation method. type ReportsListByOperationOptions struct { // OData order by query option. Orderby *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListByProductOptions contains the optional parameters for the Reports.ListByProduct method. type ReportsListByProductOptions struct { // OData order by query option. Orderby *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListByRequestOptions contains the optional parameters for the Reports.ListByRequest method. type ReportsListByRequestOptions struct { // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListBySubscriptionOptions contains the optional parameters for the Reports.ListBySubscription method. type ReportsListBySubscriptionOptions struct { // OData order by query option. Orderby *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListByTimeOptions contains the optional parameters for the Reports.ListByTime method. type ReportsListByTimeOptions struct { // OData order by query option. Orderby *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // ReportsListByUserOptions contains the optional parameters for the Reports.ListByUser method. type ReportsListByUserOptions struct { // OData order by query option. Orderby *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // RepresentationContract - Operation request/response representation details. type RepresentationContract struct { // REQUIRED; Specifies a registered or custom content type for this representation, e.g. application/xml. ContentType *string `json:"contentType,omitempty"` // Collection of form parameters. Required if 'contentType' value is either 'application/x-www-form-urlencoded' or 'multipart/form-data'.. FormParameters []*ParameterContract `json:"formParameters,omitempty"` // An example of the representation. Sample *string `json:"sample,omitempty"` // Schema identifier. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'. SchemaID *string `json:"schemaId,omitempty"` // Type name defined by the schema. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'. TypeName *string `json:"typeName,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RepresentationContract. func (r RepresentationContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "contentType", r.ContentType) populate(objectMap, "formParameters", r.FormParameters) populate(objectMap, "sample", r.Sample) populate(objectMap, "schemaId", r.SchemaID) populate(objectMap, "typeName", r.TypeName) return json.Marshal(objectMap) } // RequestContract - Operation request details. type RequestContract struct { // Operation request description. Description *string `json:"description,omitempty"` // Collection of operation request headers. Headers []*ParameterContract `json:"headers,omitempty"` // Collection of operation request query parameters. QueryParameters []*ParameterContract `json:"queryParameters,omitempty"` // Collection of operation request representations. Representations []*RepresentationContract `json:"representations,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RequestContract. func (r RequestContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "description", r.Description) populate(objectMap, "headers", r.Headers) populate(objectMap, "queryParameters", r.QueryParameters) populate(objectMap, "representations", r.Representations) return json.Marshal(objectMap) } // RequestReportCollection - Paged Report records list representation. type RequestReportCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Page values. Value []*RequestReportRecordContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type RequestReportCollection. func (r RequestReportCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", r.Count) populate(objectMap, "value", r.Value) return json.Marshal(objectMap) } // RequestReportRecordContract - Request Report data. type RequestReportRecordContract struct { // API identifier path. /apis/{apiId} APIID *string `json:"apiId,omitempty"` // Azure region where the gateway that processed this request is located. APIRegion *string `json:"apiRegion,omitempty"` // The total time it took to process this request. APITime *float64 `json:"apiTime,omitempty"` // The HTTP status code received by the gateway as a result of forwarding this request to the backend. BackendResponseCode *string `json:"backendResponseCode,omitempty"` // 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. Cache *string `json:"cache,omitempty"` // The client IP address associated with this request. IPAddress *string `json:"ipAddress,omitempty"` // The HTTP method associated with this request.. Method *string `json:"method,omitempty"` // Operation identifier path. /apis/{apiId}/operations/{operationId} OperationID *string `json:"operationId,omitempty"` // Request Identifier. RequestID *string `json:"requestId,omitempty"` // The size of this request.. RequestSize *int32 `json:"requestSize,omitempty"` // The HTTP status code returned by the gateway. ResponseCode *int32 `json:"responseCode,omitempty"` // The size of the response returned by the gateway. ResponseSize *int32 `json:"responseSize,omitempty"` // he time it took to forward this request to the backend and get the response back. ServiceTime *float64 `json:"serviceTime,omitempty"` // Subscription identifier path. /subscriptions/{subscriptionId} SubscriptionID *string `json:"subscriptionId,omitempty"` // The date and time when this request was received by the gateway in ISO 8601 format. Timestamp *time.Time `json:"timestamp,omitempty"` // The full URL associated with this request. URL *string `json:"url,omitempty"` // READ-ONLY; Product identifier path. /products/{productId} ProductID *string `json:"productId,omitempty" azure:"ro"` // READ-ONLY; User identifier path. /users/{userId} UserID *string `json:"userId,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type RequestReportRecordContract. func (r RequestReportRecordContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "apiId", r.APIID) populate(objectMap, "apiRegion", r.APIRegion) populate(objectMap, "apiTime", r.APITime) populate(objectMap, "backendResponseCode", r.BackendResponseCode) populate(objectMap, "cache", r.Cache) populate(objectMap, "ipAddress", r.IPAddress) populate(objectMap, "method", r.Method) populate(objectMap, "operationId", r.OperationID) populate(objectMap, "productId", r.ProductID) populate(objectMap, "requestId", r.RequestID) populate(objectMap, "requestSize", r.RequestSize) populate(objectMap, "responseCode", r.ResponseCode) populate(objectMap, "responseSize", r.ResponseSize) populate(objectMap, "serviceTime", r.ServiceTime) populate(objectMap, "subscriptionId", r.SubscriptionID) populate(objectMap, "timestamp", (*timeRFC3339)(r.Timestamp)) populate(objectMap, "url", r.URL) populate(objectMap, "userId", r.UserID) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type RequestReportRecordContract. func (r *RequestReportRecordContract) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "apiId": err = unpopulate(val, &r.APIID) delete(rawMsg, key) case "apiRegion": err = unpopulate(val, &r.APIRegion) delete(rawMsg, key) case "apiTime": err = unpopulate(val, &r.APITime) delete(rawMsg, key) case "backendResponseCode": err = unpopulate(val, &r.BackendResponseCode) delete(rawMsg, key) case "cache": err = unpopulate(val, &r.Cache) delete(rawMsg, key) case "ipAddress": err = unpopulate(val, &r.IPAddress) delete(rawMsg, key) case "method": err = unpopulate(val, &r.Method) delete(rawMsg, key) case "operationId": err = unpopulate(val, &r.OperationID) delete(rawMsg, key) case "productId": err = unpopulate(val, &r.ProductID) delete(rawMsg, key) case "requestId": err = unpopulate(val, &r.RequestID) delete(rawMsg, key) case "requestSize": err = unpopulate(val, &r.RequestSize) delete(rawMsg, key) case "responseCode": err = unpopulate(val, &r.ResponseCode) delete(rawMsg, key) case "responseSize": err = unpopulate(val, &r.ResponseSize) delete(rawMsg, key) case "serviceTime": err = unpopulate(val, &r.ServiceTime) delete(rawMsg, key) case "subscriptionId": err = unpopulate(val, &r.SubscriptionID) delete(rawMsg, key) case "timestamp": var aux timeRFC3339 err = unpopulate(val, &aux) r.Timestamp = (*time.Time)(&aux) delete(rawMsg, key) case "url": err = unpopulate(val, &r.URL) delete(rawMsg, key) case "userId": err = unpopulate(val, &r.UserID) delete(rawMsg, key) } if err != nil { return err } } return nil } // Resource - The Resource definition. type Resource struct { // READ-ONLY; Resource ID. ID *string `json:"id,omitempty" azure:"ro"` // READ-ONLY; Resource name. Name *string `json:"name,omitempty" azure:"ro"` // READ-ONLY; Resource type for API Management resource. Type *string `json:"type,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type Resource. func (r Resource) MarshalJSON() ([]byte, error) { objectMap := r.marshalInternal() return json.Marshal(objectMap) } func (r Resource) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "id", r.ID) populate(objectMap, "name", r.Name) populate(objectMap, "type", r.Type) return objectMap } // ResourceLocationDataContract - Resource location data properties. type ResourceLocationDataContract struct { // REQUIRED; A canonical name for the geographic or physical location. Name *string `json:"name,omitempty"` // The city or locality where the resource is located. City *string `json:"city,omitempty"` // The country or region where the resource is located. CountryOrRegion *string `json:"countryOrRegion,omitempty"` // The district, state, or province where the resource is located. District *string `json:"district,omitempty"` } // ResourceSKU - Describes an available API Management SKU. type ResourceSKU struct { // Name of the Sku. Name *SKUType `json:"name,omitempty"` } // ResourceSKUCapacity - Describes scaling information of a SKU. type ResourceSKUCapacity struct { // READ-ONLY; The default capacity. Default *int32 `json:"default,omitempty" azure:"ro"` // READ-ONLY; The maximum capacity that can be set. Maximum *int32 `json:"maximum,omitempty" azure:"ro"` // READ-ONLY; The minimum capacity. Minimum *int32 `json:"minimum,omitempty" azure:"ro"` // READ-ONLY; The scale type applicable to the sku. ScaleType *ResourceSKUCapacityScaleType `json:"scaleType,omitempty" azure:"ro"` } // ResourceSKUResult - Describes an available API Management service SKU. type ResourceSKUResult struct { // READ-ONLY; Specifies the number of API Management units. Capacity *ResourceSKUCapacity `json:"capacity,omitempty" azure:"ro"` // READ-ONLY; The type of resource the SKU applies to. ResourceType *string `json:"resourceType,omitempty" azure:"ro"` // READ-ONLY; Specifies API Management SKU. SKU *ResourceSKU `json:"sku,omitempty" azure:"ro"` } // ResourceSKUResults - The API Management service SKUs operation response. type ResourceSKUResults struct { // REQUIRED; The list of skus available for the service. Value []*ResourceSKUResult `json:"value,omitempty"` // The uri to fetch the next page of API Management service Skus. NextLink *string `json:"nextLink,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ResourceSKUResults. func (r ResourceSKUResults) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", r.NextLink) populate(objectMap, "value", r.Value) return json.Marshal(objectMap) } // ResponseContract - Operation response details. type ResponseContract struct { // REQUIRED; Operation response HTTP status code. StatusCode *int32 `json:"statusCode,omitempty"` // Operation response description. Description *string `json:"description,omitempty"` // Collection of operation response headers. Headers []*ParameterContract `json:"headers,omitempty"` // Collection of operation response representations. Representations []*RepresentationContract `json:"representations,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type ResponseContract. func (r ResponseContract) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "description", r.Description) populate(objectMap, "headers", r.Headers) populate(objectMap, "representations", r.Representations) populate(objectMap, "statusCode", r.StatusCode) return json.Marshal(objectMap) } // SamplingSettings - Sampling settings for Diagnostic. type SamplingSettings struct { // Rate of sampling for fixed-rate sampling. Percentage *float64 `json:"percentage,omitempty"` // Sampling type. SamplingType *SamplingType `json:"samplingType,omitempty"` } // SaveConfigurationParameter - Save Tenant Configuration Contract details. type SaveConfigurationParameter struct { // Properties of the Save Configuration Parameters. Properties *SaveConfigurationParameterProperties `json:"properties,omitempty"` } // SaveConfigurationParameterProperties - Parameters supplied to the Save Tenant Configuration operation. type SaveConfigurationParameterProperties struct { // REQUIRED; The name of the Git branch in which to commit the current configuration snapshot. Branch *string `json:"branch,omitempty"` // 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. Force *bool `json:"force,omitempty"` } // SchemaCollection - The response of the list schema operation. type SchemaCollection struct { // Total record count number. Count *int64 `json:"count,omitempty"` // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Api Schema Contract value. Value []*SchemaContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type SchemaCollection. func (s SchemaCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", s.Count) populate(objectMap, "nextLink", s.NextLink) populate(objectMap, "value", s.Value) return json.Marshal(objectMap) } // SchemaContract - Schema Contract details. type SchemaContract struct { Resource // Properties of the Schema. Properties *SchemaContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type SchemaContract. func (s SchemaContract) MarshalJSON() ([]byte, error) { objectMap := s.Resource.marshalInternal() populate(objectMap, "properties", s.Properties) return json.Marshal(objectMap) } // SchemaContractProperties - API Schema create or update contract Properties. type SchemaContractProperties struct { // 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. ContentType *string `json:"contentType,omitempty"` // Create or update Properties of the Schema Document. Document *SchemaDocumentProperties `json:"document,omitempty"` } // SchemaDocumentProperties - Schema Document Properties. type SchemaDocumentProperties struct { // Types definitions. Used for Swagger/OpenAPI schemas only, null otherwise. Definitions map[string]interface{} `json:"definitions,omitempty"` // Json escaped string defining the document representing the Schema. Used for schemas other than Swagger/OpenAPI. Value *string `json:"value,omitempty"` } // SignInSettingsCreateOrUpdateOptions contains the optional parameters for the SignInSettings.CreateOrUpdate method. type SignInSettingsCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // SignInSettingsGetEntityTagOptions contains the optional parameters for the SignInSettings.GetEntityTag method. type SignInSettingsGetEntityTagOptions struct { // placeholder for future optional parameters } // SignInSettingsGetOptions contains the optional parameters for the SignInSettings.Get method. type SignInSettingsGetOptions struct { // placeholder for future optional parameters } // SignInSettingsUpdateOptions contains the optional parameters for the SignInSettings.Update method. type SignInSettingsUpdateOptions struct { // placeholder for future optional parameters } // SignUpSettingsCreateOrUpdateOptions contains the optional parameters for the SignUpSettings.CreateOrUpdate method. type SignUpSettingsCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // SignUpSettingsGetEntityTagOptions contains the optional parameters for the SignUpSettings.GetEntityTag method. type SignUpSettingsGetEntityTagOptions struct { // placeholder for future optional parameters } // SignUpSettingsGetOptions contains the optional parameters for the SignUpSettings.Get method. type SignUpSettingsGetOptions struct { // placeholder for future optional parameters } // SignUpSettingsUpdateOptions contains the optional parameters for the SignUpSettings.Update method. type SignUpSettingsUpdateOptions struct { // placeholder for future optional parameters } // SubscriptionCollection - Paged Subscriptions list representation. type SubscriptionCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*SubscriptionContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type SubscriptionCollection. func (s SubscriptionCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", s.Count) populate(objectMap, "nextLink", s.NextLink) populate(objectMap, "value", s.Value) return json.Marshal(objectMap) } // SubscriptionContract - Subscription details. type SubscriptionContract struct { Resource // Subscription contract properties. Properties *SubscriptionContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type SubscriptionContract. func (s SubscriptionContract) MarshalJSON() ([]byte, error) { objectMap := s.Resource.marshalInternal() populate(objectMap, "properties", s.Properties) return json.Marshal(objectMap) } // SubscriptionContractProperties - Subscription details. type SubscriptionContractProperties struct { // REQUIRED; Scope like /products/{productId} or /apis or /apis/{apiId}. Scope *string `json:"scope,omitempty"` // 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. State *SubscriptionState `json:"state,omitempty"` // Determines whether tracing is enabled AllowTracing *bool `json:"allowTracing,omitempty"` // The name of the subscription, or null if the subscription has no name. DisplayName *string `json:"displayName,omitempty"` // 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. EndDate *time.Time `json:"endDate,omitempty"` // 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. ExpirationDate *time.Time `json:"expirationDate,omitempty"` // Upcoming subscription expiration notification date. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. NotificationDate *time.Time `json:"notificationDate,omitempty"` // 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. OwnerID *string `json:"ownerId,omitempty"` // Subscription primary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. PrimaryKey *string `json:"primaryKey,omitempty"` // Subscription secondary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. SecondaryKey *string `json:"secondaryKey,omitempty"` // 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. StartDate *time.Time `json:"startDate,omitempty"` // Optional subscription comment added by an administrator when the state is changed to the 'rejected'. StateComment *string `json:"stateComment,omitempty"` // READ-ONLY; Subscription creation date. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. CreatedDate *time.Time `json:"createdDate,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type SubscriptionContractProperties. func (s SubscriptionContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "allowTracing", s.AllowTracing) populate(objectMap, "createdDate", (*timeRFC3339)(s.CreatedDate)) populate(objectMap, "displayName", s.DisplayName) populate(objectMap, "endDate", (*timeRFC3339)(s.EndDate)) populate(objectMap, "expirationDate", (*timeRFC3339)(s.ExpirationDate)) populate(objectMap, "notificationDate", (*timeRFC3339)(s.NotificationDate)) populate(objectMap, "ownerId", s.OwnerID) populate(objectMap, "primaryKey", s.PrimaryKey) populate(objectMap, "scope", s.Scope) populate(objectMap, "secondaryKey", s.SecondaryKey) populate(objectMap, "startDate", (*timeRFC3339)(s.StartDate)) populate(objectMap, "state", s.State) populate(objectMap, "stateComment", s.StateComment) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type SubscriptionContractProperties. func (s *SubscriptionContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "allowTracing": err = unpopulate(val, &s.AllowTracing) delete(rawMsg, key) case "createdDate": var aux timeRFC3339 err = unpopulate(val, &aux) s.CreatedDate = (*time.Time)(&aux) delete(rawMsg, key) case "displayName": err = unpopulate(val, &s.DisplayName) delete(rawMsg, key) case "endDate": var aux timeRFC3339 err = unpopulate(val, &aux) s.EndDate = (*time.Time)(&aux) delete(rawMsg, key) case "expirationDate": var aux timeRFC3339 err = unpopulate(val, &aux) s.ExpirationDate = (*time.Time)(&aux) delete(rawMsg, key) case "notificationDate": var aux timeRFC3339 err = unpopulate(val, &aux) s.NotificationDate = (*time.Time)(&aux) delete(rawMsg, key) case "ownerId": err = unpopulate(val, &s.OwnerID) delete(rawMsg, key) case "primaryKey": err = unpopulate(val, &s.PrimaryKey) delete(rawMsg, key) case "scope": err = unpopulate(val, &s.Scope) delete(rawMsg, key) case "secondaryKey": err = unpopulate(val, &s.SecondaryKey) delete(rawMsg, key) case "startDate": var aux timeRFC3339 err = unpopulate(val, &aux) s.StartDate = (*time.Time)(&aux) delete(rawMsg, key) case "state": err = unpopulate(val, &s.State) delete(rawMsg, key) case "stateComment": err = unpopulate(val, &s.StateComment) delete(rawMsg, key) } if err != nil { return err } } return nil } // SubscriptionCreateOrUpdateOptions contains the optional parameters for the Subscription.CreateOrUpdate method. type SubscriptionCreateOrUpdateOptions struct { // Determines the type of application which send the create user request. Default is legacy publisher portal. AppType *AppType // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string // 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 Notify *bool } // SubscriptionCreateParameterProperties - Parameters supplied to the Create subscription operation. type SubscriptionCreateParameterProperties struct { // REQUIRED; Subscription name. DisplayName *string `json:"displayName,omitempty"` // REQUIRED; Scope like /products/{productId} or /apis or /apis/{apiId}. Scope *string `json:"scope,omitempty"` // Determines whether tracing can be enabled AllowTracing *bool `json:"allowTracing,omitempty"` // User (user id path) for whom subscription is being created in form /users/{userId} OwnerID *string `json:"ownerId,omitempty"` // Primary subscription key. If not specified during request key will be generated automatically. PrimaryKey *string `json:"primaryKey,omitempty"` // Secondary subscription key. If not specified during request key will be generated automatically. SecondaryKey *string `json:"secondaryKey,omitempty"` // 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. State *SubscriptionState `json:"state,omitempty"` } // SubscriptionCreateParameters - Subscription create details. type SubscriptionCreateParameters struct { // Subscription contract properties. Properties *SubscriptionCreateParameterProperties `json:"properties,omitempty"` } // SubscriptionDeleteOptions contains the optional parameters for the Subscription.Delete method. type SubscriptionDeleteOptions struct { // placeholder for future optional parameters } // SubscriptionGetEntityTagOptions contains the optional parameters for the Subscription.GetEntityTag method. type SubscriptionGetEntityTagOptions struct { // placeholder for future optional parameters } // SubscriptionGetOptions contains the optional parameters for the Subscription.Get method. type SubscriptionGetOptions struct { // placeholder for future optional parameters } // SubscriptionKeyParameterNamesContract - Subscription key parameter names details. type SubscriptionKeyParameterNamesContract struct { // Subscription key header name. Header *string `json:"header,omitempty"` // Subscription key query string parameter name. Query *string `json:"query,omitempty"` } // SubscriptionKeysContract - Subscription keys. type SubscriptionKeysContract struct { // Subscription primary key. PrimaryKey *string `json:"primaryKey,omitempty"` // Subscription secondary key. SecondaryKey *string `json:"secondaryKey,omitempty"` } // SubscriptionListOptions contains the optional parameters for the Subscription.List method. type SubscriptionListOptions struct { // | 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 | | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // SubscriptionListSecretsOptions contains the optional parameters for the Subscription.ListSecrets method. type SubscriptionListSecretsOptions struct { // placeholder for future optional parameters } // SubscriptionRegeneratePrimaryKeyOptions contains the optional parameters for the Subscription.RegeneratePrimaryKey method. type SubscriptionRegeneratePrimaryKeyOptions struct { // placeholder for future optional parameters } // SubscriptionRegenerateSecondaryKeyOptions contains the optional parameters for the Subscription.RegenerateSecondaryKey method. type SubscriptionRegenerateSecondaryKeyOptions struct { // placeholder for future optional parameters } // SubscriptionUpdateOptions contains the optional parameters for the Subscription.Update method. type SubscriptionUpdateOptions struct { // Determines the type of application which send the create user request. Default is legacy publisher portal. AppType *AppType // 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 Notify *bool } // SubscriptionUpdateParameterProperties - Parameters supplied to the Update subscription operation. type SubscriptionUpdateParameterProperties struct { // Determines whether tracing can be enabled AllowTracing *bool `json:"allowTracing,omitempty"` // Subscription name. DisplayName *string `json:"displayName,omitempty"` // 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. ExpirationDate *time.Time `json:"expirationDate,omitempty"` // User identifier path: /users/{userId} OwnerID *string `json:"ownerId,omitempty"` // Primary subscription key. PrimaryKey *string `json:"primaryKey,omitempty"` // Scope like /products/{productId} or /apis or /apis/{apiId} Scope *string `json:"scope,omitempty"` // Secondary subscription key. SecondaryKey *string `json:"secondaryKey,omitempty"` // 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. State *SubscriptionState `json:"state,omitempty"` // Comments describing subscription state change by the administrator when the state is changed to the 'rejected'. StateComment *string `json:"stateComment,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type SubscriptionUpdateParameterProperties. func (s SubscriptionUpdateParameterProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "allowTracing", s.AllowTracing) populate(objectMap, "displayName", s.DisplayName) populate(objectMap, "expirationDate", (*timeRFC3339)(s.ExpirationDate)) populate(objectMap, "ownerId", s.OwnerID) populate(objectMap, "primaryKey", s.PrimaryKey) populate(objectMap, "scope", s.Scope) populate(objectMap, "secondaryKey", s.SecondaryKey) populate(objectMap, "state", s.State) populate(objectMap, "stateComment", s.StateComment) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type SubscriptionUpdateParameterProperties. func (s *SubscriptionUpdateParameterProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "allowTracing": err = unpopulate(val, &s.AllowTracing) delete(rawMsg, key) case "displayName": err = unpopulate(val, &s.DisplayName) delete(rawMsg, key) case "expirationDate": var aux timeRFC3339 err = unpopulate(val, &aux) s.ExpirationDate = (*time.Time)(&aux) delete(rawMsg, key) case "ownerId": err = unpopulate(val, &s.OwnerID) delete(rawMsg, key) case "primaryKey": err = unpopulate(val, &s.PrimaryKey) delete(rawMsg, key) case "scope": err = unpopulate(val, &s.Scope) delete(rawMsg, key) case "secondaryKey": err = unpopulate(val, &s.SecondaryKey) delete(rawMsg, key) case "state": err = unpopulate(val, &s.State) delete(rawMsg, key) case "stateComment": err = unpopulate(val, &s.StateComment) delete(rawMsg, key) } if err != nil { return err } } return nil } // SubscriptionUpdateParameters - Subscription update details. type SubscriptionUpdateParameters struct { // Subscription Update contract properties. Properties *SubscriptionUpdateParameterProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type SubscriptionUpdateParameters. func (s SubscriptionUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", s.Properties) return json.Marshal(objectMap) } // SubscriptionsDelegationSettingsProperties - Subscriptions delegation settings properties. type SubscriptionsDelegationSettingsProperties struct { // Enable or disable delegation for subscriptions. Enabled *bool `json:"enabled,omitempty"` } // TagAssignToAPIOptions contains the optional parameters for the Tag.AssignToAPI method. type TagAssignToAPIOptions struct { // placeholder for future optional parameters } // TagAssignToOperationOptions contains the optional parameters for the Tag.AssignToOperation method. type TagAssignToOperationOptions struct { // placeholder for future optional parameters } // TagAssignToProductOptions contains the optional parameters for the Tag.AssignToProduct method. type TagAssignToProductOptions struct { // placeholder for future optional parameters } // TagCollection - Paged Tag list representation. type TagCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*TagContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TagCollection. func (t TagCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", t.Count) populate(objectMap, "nextLink", t.NextLink) populate(objectMap, "value", t.Value) return json.Marshal(objectMap) } // TagContract - Tag Contract details. type TagContract struct { Resource // Tag entity contract properties. Properties *TagContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TagContract. func (t TagContract) MarshalJSON() ([]byte, error) { objectMap := t.Resource.marshalInternal() populate(objectMap, "properties", t.Properties) return json.Marshal(objectMap) } // TagContractProperties - Tag contract Properties. type TagContractProperties struct { // REQUIRED; Tag name. DisplayName *string `json:"displayName,omitempty"` } // TagCreateOrUpdateOptions contains the optional parameters for the Tag.CreateOrUpdate method. type TagCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string } // TagCreateUpdateParameters - Parameters supplied to Create/Update Tag operations. type TagCreateUpdateParameters struct { // Properties supplied to Create Tag operation. Properties *TagContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TagCreateUpdateParameters. func (t TagCreateUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", t.Properties) return json.Marshal(objectMap) } // TagDeleteOptions contains the optional parameters for the Tag.Delete method. type TagDeleteOptions struct { // placeholder for future optional parameters } // TagDescriptionBaseProperties - Parameters supplied to the Create TagDescription operation. type TagDescriptionBaseProperties struct { // Description of the Tag. Description *string `json:"description,omitempty"` // Description of the external resources describing the tag. ExternalDocsDescription *string `json:"externalDocsDescription,omitempty"` // Absolute URL of external resources describing the tag. ExternalDocsURL *string `json:"externalDocsUrl,omitempty"` } // TagDescriptionCollection - Paged TagDescription list representation. type TagDescriptionCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*TagDescriptionContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TagDescriptionCollection. func (t TagDescriptionCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", t.Count) populate(objectMap, "nextLink", t.NextLink) populate(objectMap, "value", t.Value) return json.Marshal(objectMap) } // TagDescriptionContract - Contract details. type TagDescriptionContract struct { Resource // TagDescription entity contract properties. Properties *TagDescriptionContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TagDescriptionContract. func (t TagDescriptionContract) MarshalJSON() ([]byte, error) { objectMap := t.Resource.marshalInternal() populate(objectMap, "properties", t.Properties) return json.Marshal(objectMap) } // TagDescriptionContractProperties - TagDescription contract Properties. type TagDescriptionContractProperties struct { TagDescriptionBaseProperties // Tag name. DisplayName *string `json:"displayName,omitempty"` // Identifier of the tag in the form of /tags/{tagId} TagID *string `json:"tagId,omitempty"` } // TagDescriptionCreateParameters - Parameters supplied to the Create TagDescription operation. type TagDescriptionCreateParameters struct { // Properties supplied to Create TagDescription operation. Properties *TagDescriptionBaseProperties `json:"properties,omitempty"` } // TagDetachFromAPIOptions contains the optional parameters for the Tag.DetachFromAPI method. type TagDetachFromAPIOptions struct { // placeholder for future optional parameters } // TagDetachFromOperationOptions contains the optional parameters for the Tag.DetachFromOperation method. type TagDetachFromOperationOptions struct { // placeholder for future optional parameters } // TagDetachFromProductOptions contains the optional parameters for the Tag.DetachFromProduct method. type TagDetachFromProductOptions struct { // placeholder for future optional parameters } // TagGetByAPIOptions contains the optional parameters for the Tag.GetByAPI method. type TagGetByAPIOptions struct { // placeholder for future optional parameters } // TagGetByOperationOptions contains the optional parameters for the Tag.GetByOperation method. type TagGetByOperationOptions struct { // placeholder for future optional parameters } // TagGetByProductOptions contains the optional parameters for the Tag.GetByProduct method. type TagGetByProductOptions struct { // placeholder for future optional parameters } // TagGetEntityStateByAPIOptions contains the optional parameters for the Tag.GetEntityStateByAPI method. type TagGetEntityStateByAPIOptions struct { // placeholder for future optional parameters } // TagGetEntityStateByOperationOptions contains the optional parameters for the Tag.GetEntityStateByOperation method. type TagGetEntityStateByOperationOptions struct { // placeholder for future optional parameters } // TagGetEntityStateByProductOptions contains the optional parameters for the Tag.GetEntityStateByProduct method. type TagGetEntityStateByProductOptions struct { // placeholder for future optional parameters } // TagGetEntityStateOptions contains the optional parameters for the Tag.GetEntityState method. type TagGetEntityStateOptions struct { // placeholder for future optional parameters } // TagGetOptions contains the optional parameters for the Tag.Get method. type TagGetOptions struct { // placeholder for future optional parameters } // TagListByAPIOptions contains the optional parameters for the Tag.ListByAPI method. type TagListByAPIOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // TagListByOperationOptions contains the optional parameters for the Tag.ListByOperation method. type TagListByOperationOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // TagListByProductOptions contains the optional parameters for the Tag.ListByProduct method. type TagListByProductOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // TagListByServiceOptions contains the optional parameters for the Tag.ListByService method. type TagListByServiceOptions struct { // | 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 |
Filter *string // Scope like 'apis', 'products' or 'apis/{apiId} Scope *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // TagResourceCollection - Paged Tag list representation. type TagResourceCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*TagResourceContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TagResourceCollection. func (t TagResourceCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", t.Count) populate(objectMap, "nextLink", t.NextLink) populate(objectMap, "value", t.Value) return json.Marshal(objectMap) } // TagResourceContract - TagResource contract properties. type TagResourceContract struct { // REQUIRED; Tag associated with the resource. Tag *TagResourceContractProperties `json:"tag,omitempty"` // Api associated with the tag. API *APITagResourceContractProperties `json:"api,omitempty"` // Operation associated with the tag. Operation *OperationTagResourceContractProperties `json:"operation,omitempty"` // Product associated with the tag. Product *ProductTagResourceContractProperties `json:"product,omitempty"` } // TagResourceContractProperties - Contract defining the Tag property in the Tag Resource Contract type TagResourceContractProperties struct { // Tag identifier ID *string `json:"id,omitempty"` // Tag Name Name *string `json:"name,omitempty"` } // TagResourceListByServiceOptions contains the optional parameters for the TagResource.ListByService method. type TagResourceListByServiceOptions struct { // | 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 | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // TagUpdateOptions contains the optional parameters for the Tag.Update method. type TagUpdateOptions struct { // placeholder for future optional parameters } // TenantAccessCreateOptions contains the optional parameters for the TenantAccess.Create method. type TenantAccessCreateOptions struct { // placeholder for future optional parameters } // TenantAccessGetEntityTagOptions contains the optional parameters for the TenantAccess.GetEntityTag method. type TenantAccessGetEntityTagOptions struct { // placeholder for future optional parameters } // TenantAccessGetOptions contains the optional parameters for the TenantAccess.Get method. type TenantAccessGetOptions struct { // placeholder for future optional parameters } // TenantAccessGitRegeneratePrimaryKeyOptions contains the optional parameters for the TenantAccessGit.RegeneratePrimaryKey method. type TenantAccessGitRegeneratePrimaryKeyOptions struct { // placeholder for future optional parameters } // TenantAccessGitRegenerateSecondaryKeyOptions contains the optional parameters for the TenantAccessGit.RegenerateSecondaryKey method. type TenantAccessGitRegenerateSecondaryKeyOptions struct { // placeholder for future optional parameters } // TenantAccessListByServiceOptions contains the optional parameters for the TenantAccess.ListByService method. type TenantAccessListByServiceOptions struct { // Not used Filter *string } // TenantAccessListSecretsOptions contains the optional parameters for the TenantAccess.ListSecrets method. type TenantAccessListSecretsOptions struct { // placeholder for future optional parameters } // TenantAccessRegeneratePrimaryKeyOptions contains the optional parameters for the TenantAccess.RegeneratePrimaryKey method. type TenantAccessRegeneratePrimaryKeyOptions struct { // placeholder for future optional parameters } // TenantAccessRegenerateSecondaryKeyOptions contains the optional parameters for the TenantAccess.RegenerateSecondaryKey method. type TenantAccessRegenerateSecondaryKeyOptions struct { // placeholder for future optional parameters } // TenantAccessUpdateOptions contains the optional parameters for the TenantAccess.Update method. type TenantAccessUpdateOptions struct { // placeholder for future optional parameters } // TenantConfigurationBeginDeployOptions contains the optional parameters for the TenantConfiguration.BeginDeploy method. type TenantConfigurationBeginDeployOptions struct { // placeholder for future optional parameters } // TenantConfigurationBeginSaveOptions contains the optional parameters for the TenantConfiguration.BeginSave method. type TenantConfigurationBeginSaveOptions struct { // placeholder for future optional parameters } // TenantConfigurationBeginValidateOptions contains the optional parameters for the TenantConfiguration.BeginValidate method. type TenantConfigurationBeginValidateOptions struct { // placeholder for future optional parameters } // TenantConfigurationGetSyncStateOptions contains the optional parameters for the TenantConfiguration.GetSyncState method. type TenantConfigurationGetSyncStateOptions struct { // placeholder for future optional parameters } // TenantConfigurationSyncStateContract - Result of Tenant Configuration Sync State. type TenantConfigurationSyncStateContract struct { // Properties returned Tenant Configuration Sync State check. Properties *TenantConfigurationSyncStateContractProperties `json:"properties,omitempty"` } // TenantConfigurationSyncStateContractProperties - Tenant Configuration Synchronization State. type TenantConfigurationSyncStateContractProperties struct { // The name of Git branch. Branch *string `json:"branch,omitempty"` // The latest commit Id. CommitID *string `json:"commitId,omitempty"` // 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. ConfigurationChangeDate *time.Time `json:"configurationChangeDate,omitempty"` // value indicating if last sync was save (true) or deploy (false) operation. IsExport *bool `json:"isExport,omitempty"` // value indicating whether Git configuration access is enabled. IsGitEnabled *bool `json:"isGitEnabled,omitempty"` // value indicating if last synchronization was later than the configuration change. IsSynced *bool `json:"isSynced,omitempty"` // Most recent tenant configuration operation identifier LastOperationID *string `json:"lastOperationId,omitempty"` // 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. SyncDate *time.Time `json:"syncDate,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TenantConfigurationSyncStateContractProperties. func (t TenantConfigurationSyncStateContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "branch", t.Branch) populate(objectMap, "commitId", t.CommitID) populate(objectMap, "configurationChangeDate", (*timeRFC3339)(t.ConfigurationChangeDate)) populate(objectMap, "isExport", t.IsExport) populate(objectMap, "isGitEnabled", t.IsGitEnabled) populate(objectMap, "isSynced", t.IsSynced) populate(objectMap, "lastOperationId", t.LastOperationID) populate(objectMap, "syncDate", (*timeRFC3339)(t.SyncDate)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type TenantConfigurationSyncStateContractProperties. func (t *TenantConfigurationSyncStateContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "branch": err = unpopulate(val, &t.Branch) delete(rawMsg, key) case "commitId": err = unpopulate(val, &t.CommitID) delete(rawMsg, key) case "configurationChangeDate": var aux timeRFC3339 err = unpopulate(val, &aux) t.ConfigurationChangeDate = (*time.Time)(&aux) delete(rawMsg, key) case "isExport": err = unpopulate(val, &t.IsExport) delete(rawMsg, key) case "isGitEnabled": err = unpopulate(val, &t.IsGitEnabled) delete(rawMsg, key) case "isSynced": err = unpopulate(val, &t.IsSynced) delete(rawMsg, key) case "lastOperationId": err = unpopulate(val, &t.LastOperationID) delete(rawMsg, key) case "syncDate": var aux timeRFC3339 err = unpopulate(val, &aux) t.SyncDate = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return nil } // TenantSettingsCollection - Paged AccessInformation list representation. type TenantSettingsCollection struct { // READ-ONLY; Next page link if any. NextLink *string `json:"nextLink,omitempty" azure:"ro"` // READ-ONLY; Page values. Value []*TenantSettingsContract `json:"value,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type TenantSettingsCollection. func (t TenantSettingsCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "nextLink", t.NextLink) populate(objectMap, "value", t.Value) return json.Marshal(objectMap) } // TenantSettingsContract - Tenant Settings. type TenantSettingsContract struct { Resource // TenantSettings entity contract properties. Properties *TenantSettingsContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TenantSettingsContract. func (t TenantSettingsContract) MarshalJSON() ([]byte, error) { objectMap := t.Resource.marshalInternal() populate(objectMap, "properties", t.Properties) return json.Marshal(objectMap) } // TenantSettingsContractProperties - Tenant access information contract of the API Management service. type TenantSettingsContractProperties struct { // Tenant settings Settings map[string]*string `json:"settings,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type TenantSettingsContractProperties. func (t TenantSettingsContractProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "settings", t.Settings) return json.Marshal(objectMap) } // TenantSettingsGetOptions contains the optional parameters for the TenantSettings.Get method. type TenantSettingsGetOptions struct { // placeholder for future optional parameters } // TenantSettingsListByServiceOptions contains the optional parameters for the TenantSettings.ListByService method. type TenantSettingsListByServiceOptions struct { // Not used Filter *string } // TermsOfServiceProperties - Terms of service contract properties. type TermsOfServiceProperties struct { // Ask user for consent to the terms of service. ConsentRequired *bool `json:"consentRequired,omitempty"` // Display terms of service during a sign-up process. Enabled *bool `json:"enabled,omitempty"` // A terms of service text. Text *string `json:"text,omitempty"` } // TokenBodyParameterContract - OAuth acquire token request body parameter (www-url-form-encoded). type TokenBodyParameterContract struct { // REQUIRED; body parameter name. Name *string `json:"name,omitempty"` // REQUIRED; body parameter value. Value *string `json:"value,omitempty"` } // UserCollection - Paged Users list representation. type UserCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // Page values. Value []*UserContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserCollection. func (u UserCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", u.Count) populate(objectMap, "nextLink", u.NextLink) populate(objectMap, "value", u.Value) return json.Marshal(objectMap) } // UserConfirmationPasswordSendOptions contains the optional parameters for the UserConfirmationPassword.Send method. type UserConfirmationPasswordSendOptions struct { // Determines the type of application which send the create user request. Default is legacy publisher portal. AppType *AppType } // UserContract - User details. type UserContract struct { Resource // User entity contract properties. Properties *UserContractProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserContract. func (u UserContract) MarshalJSON() ([]byte, error) { objectMap := u.Resource.marshalInternal() populate(objectMap, "properties", u.Properties) return json.Marshal(objectMap) } // UserContractProperties - User profile. type UserContractProperties struct { UserEntityBaseParameters // Email address. Email *string `json:"email,omitempty"` // First name. FirstName *string `json:"firstName,omitempty"` // Last name. LastName *string `json:"lastName,omitempty"` // Date of user registration. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. RegistrationDate *time.Time `json:"registrationDate,omitempty"` // READ-ONLY; Collection of groups user is part of. Groups []*GroupContractProperties `json:"groups,omitempty" azure:"ro"` } // MarshalJSON implements the json.Marshaller interface for type UserContractProperties. func (u UserContractProperties) MarshalJSON() ([]byte, error) { objectMap := u.UserEntityBaseParameters.marshalInternal() populate(objectMap, "email", u.Email) populate(objectMap, "firstName", u.FirstName) populate(objectMap, "groups", u.Groups) populate(objectMap, "lastName", u.LastName) populate(objectMap, "registrationDate", (*timeRFC3339)(u.RegistrationDate)) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type UserContractProperties. func (u *UserContractProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "email": err = unpopulate(val, &u.Email) delete(rawMsg, key) case "firstName": err = unpopulate(val, &u.FirstName) delete(rawMsg, key) case "groups": err = unpopulate(val, &u.Groups) delete(rawMsg, key) case "lastName": err = unpopulate(val, &u.LastName) delete(rawMsg, key) case "registrationDate": var aux timeRFC3339 err = unpopulate(val, &aux) u.RegistrationDate = (*time.Time)(&aux) delete(rawMsg, key) } if err != nil { return err } } return u.UserEntityBaseParameters.unmarshalInternal(rawMsg) } // UserCreateOrUpdateOptions contains the optional parameters for the User.CreateOrUpdate method. type UserCreateOrUpdateOptions struct { // ETag of the Entity. Not required when creating an entity, but required when updating an entity. IfMatch *string // Send an Email notification to the User. Notify *bool } // UserCreateParameterProperties - Parameters supplied to the Create User operation. type UserCreateParameterProperties struct { UserEntityBaseParameters // REQUIRED; Email address. Must not be empty and must be unique within the service instance. Email *string `json:"email,omitempty"` // REQUIRED; First name. FirstName *string `json:"firstName,omitempty"` // REQUIRED; Last name. LastName *string `json:"lastName,omitempty"` // Determines the type of application which send the create user request. Default is legacy portal. AppType *AppType `json:"appType,omitempty"` // Determines the type of confirmation e-mail that will be sent to the newly created user. Confirmation *Confirmation `json:"confirmation,omitempty"` // User Password. If no value is provided, a default password is generated. Password *string `json:"password,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserCreateParameterProperties. func (u UserCreateParameterProperties) MarshalJSON() ([]byte, error) { objectMap := u.UserEntityBaseParameters.marshalInternal() populate(objectMap, "appType", u.AppType) populate(objectMap, "confirmation", u.Confirmation) populate(objectMap, "email", u.Email) populate(objectMap, "firstName", u.FirstName) populate(objectMap, "lastName", u.LastName) populate(objectMap, "password", u.Password) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type UserCreateParameterProperties. func (u *UserCreateParameterProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "appType": err = unpopulate(val, &u.AppType) delete(rawMsg, key) case "confirmation": err = unpopulate(val, &u.Confirmation) delete(rawMsg, key) case "email": err = unpopulate(val, &u.Email) delete(rawMsg, key) case "firstName": err = unpopulate(val, &u.FirstName) delete(rawMsg, key) case "lastName": err = unpopulate(val, &u.LastName) delete(rawMsg, key) case "password": err = unpopulate(val, &u.Password) delete(rawMsg, key) } if err != nil { return err } } return u.UserEntityBaseParameters.unmarshalInternal(rawMsg) } // UserCreateParameters - User create details. type UserCreateParameters struct { // User entity create contract properties. Properties *UserCreateParameterProperties `json:"properties,omitempty"` } // UserDeleteOptions contains the optional parameters for the User.Delete method. type UserDeleteOptions struct { // Determines the type of application which send the create user request. Default is legacy publisher portal. AppType *AppType // Whether to delete user's subscription or not. DeleteSubscriptions *bool // Send an Account Closed Email notification to the User. Notify *bool } // UserEntityBaseParameters - User Entity Base Parameters set. type UserEntityBaseParameters struct { // Collection of user identities. Identities []*UserIdentityContract `json:"identities,omitempty"` // Optional note about a user set by the administrator. Note *string `json:"note,omitempty"` // 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. State *UserState `json:"state,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserEntityBaseParameters. func (u UserEntityBaseParameters) MarshalJSON() ([]byte, error) { objectMap := u.marshalInternal() return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type UserEntityBaseParameters. func (u *UserEntityBaseParameters) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } return u.unmarshalInternal(rawMsg) } func (u UserEntityBaseParameters) marshalInternal() map[string]interface{} { objectMap := make(map[string]interface{}) populate(objectMap, "identities", u.Identities) populate(objectMap, "note", u.Note) populate(objectMap, "state", u.State) return objectMap } func (u *UserEntityBaseParameters) unmarshalInternal(rawMsg map[string]json.RawMessage) error { for key, val := range rawMsg { var err error switch key { case "identities": err = unpopulate(val, &u.Identities) delete(rawMsg, key) case "note": err = unpopulate(val, &u.Note) delete(rawMsg, key) case "state": err = unpopulate(val, &u.State) delete(rawMsg, key) } if err != nil { return err } } return nil } // UserGenerateSsoURLOptions contains the optional parameters for the User.GenerateSsoURL method. type UserGenerateSsoURLOptions struct { // placeholder for future optional parameters } // UserGetEntityTagOptions contains the optional parameters for the User.GetEntityTag method. type UserGetEntityTagOptions struct { // placeholder for future optional parameters } // UserGetOptions contains the optional parameters for the User.Get method. type UserGetOptions struct { // placeholder for future optional parameters } // UserGetSharedAccessTokenOptions contains the optional parameters for the User.GetSharedAccessToken method. type UserGetSharedAccessTokenOptions struct { // placeholder for future optional parameters } // UserGroupListOptions contains the optional parameters for the UserGroup.List method. type UserGroupListOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // UserIdentitiesListOptions contains the optional parameters for the UserIdentities.List method. type UserIdentitiesListOptions struct { // placeholder for future optional parameters } // UserIdentityCollection - List of Users Identity list representation. type UserIdentityCollection struct { // Total record count number across all pages. Count *int64 `json:"count,omitempty"` // Next page link if any. NextLink *string `json:"nextLink,omitempty"` // User Identity values. Value []*UserIdentityContract `json:"value,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserIdentityCollection. func (u UserIdentityCollection) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "count", u.Count) populate(objectMap, "nextLink", u.NextLink) populate(objectMap, "value", u.Value) return json.Marshal(objectMap) } // UserIdentityContract - User identity details. type UserIdentityContract struct { // Identifier value within provider. ID *string `json:"id,omitempty"` // Identity provider name. Provider *string `json:"provider,omitempty"` } type UserIdentityProperties struct { // The client id of user assigned identity. ClientID *string `json:"clientId,omitempty"` // The principal id of user assigned identity. PrincipalID *string `json:"principalId,omitempty"` } // UserListByServiceOptions contains the optional parameters for the User.ListByService method. type UserListByServiceOptions struct { // Detailed Group in response. ExpandGroups *bool // | 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 | | |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // UserSubscriptionGetOptions contains the optional parameters for the UserSubscription.Get method. type UserSubscriptionGetOptions struct { // placeholder for future optional parameters } // UserSubscriptionListOptions contains the optional parameters for the UserSubscription.List method. type UserSubscriptionListOptions struct { // | 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 |
Filter *string // Number of records to skip. Skip *int32 // Number of records to return. Top *int32 } // UserTokenParameterProperties - Parameters supplied to the Get User Token operation. type UserTokenParameterProperties struct { // 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. Expiry *time.Time `json:"expiry,omitempty"` // REQUIRED; The Key to be used to generate token for user. KeyType *KeyType `json:"keyType,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserTokenParameterProperties. func (u UserTokenParameterProperties) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "expiry", (*timeRFC3339)(u.Expiry)) populate(objectMap, "keyType", u.KeyType) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type UserTokenParameterProperties. func (u *UserTokenParameterProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "expiry": var aux timeRFC3339 err = unpopulate(val, &aux) u.Expiry = (*time.Time)(&aux) delete(rawMsg, key) case "keyType": err = unpopulate(val, &u.KeyType) delete(rawMsg, key) } if err != nil { return err } } return nil } // UserTokenParameters - Get User Token parameters. type UserTokenParameters struct { // User Token Parameter contract properties. Properties *UserTokenParameterProperties `json:"properties,omitempty"` } // UserTokenResult - Get User Token response details. type UserTokenResult struct { // Shared Access Authorization token for the User. Value *string `json:"value,omitempty"` } // UserUpdateOptions contains the optional parameters for the User.Update method. type UserUpdateOptions struct { // placeholder for future optional parameters } // UserUpdateParameters - User update parameters. type UserUpdateParameters struct { // User entity update contract properties. Properties *UserUpdateParametersProperties `json:"properties,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserUpdateParameters. func (u UserUpdateParameters) MarshalJSON() ([]byte, error) { objectMap := make(map[string]interface{}) populate(objectMap, "properties", u.Properties) return json.Marshal(objectMap) } // UserUpdateParametersProperties - Parameters supplied to the Update User operation. type UserUpdateParametersProperties struct { UserEntityBaseParameters // Email address. Must not be empty and must be unique within the service instance. Email *string `json:"email,omitempty"` // First name. FirstName *string `json:"firstName,omitempty"` // Last name. LastName *string `json:"lastName,omitempty"` // User Password. Password *string `json:"password,omitempty"` } // MarshalJSON implements the json.Marshaller interface for type UserUpdateParametersProperties. func (u UserUpdateParametersProperties) MarshalJSON() ([]byte, error) { objectMap := u.UserEntityBaseParameters.marshalInternal() populate(objectMap, "email", u.Email) populate(objectMap, "firstName", u.FirstName) populate(objectMap, "lastName", u.LastName) populate(objectMap, "password", u.Password) return json.Marshal(objectMap) } // UnmarshalJSON implements the json.Unmarshaller interface for type UserUpdateParametersProperties. func (u *UserUpdateParametersProperties) UnmarshalJSON(data []byte) error { var rawMsg map[string]json.RawMessage if err := json.Unmarshal(data, &rawMsg); err != nil { return err } for key, val := range rawMsg { var err error switch key { case "email": err = unpopulate(val, &u.Email) delete(rawMsg, key) case "firstName": err = unpopulate(val, &u.FirstName) delete(rawMsg, key) case "lastName": err = unpopulate(val, &u.LastName) delete(rawMsg, key) case "password": err = unpopulate(val, &u.Password) delete(rawMsg, key) } if err != nil { return err } } return u.UserEntityBaseParameters.unmarshalInternal(rawMsg) } // VirtualNetworkConfiguration - Configuration of a virtual network to which API Management service is deployed. type VirtualNetworkConfiguration struct { // The full resource ID of a subnet in a virtual network to deploy the API Management service in. SubnetResourceID *string `json:"subnetResourceId,omitempty"` // READ-ONLY; The name of the subnet. Subnetname *string `json:"subnetname,omitempty" azure:"ro"` // READ-ONLY; The virtual network ID. This is typically a GUID. Expect a null GUID by default. Vnetid *string `json:"vnetid,omitempty" azure:"ro"` } // X509CertificateName - Properties of server X509Names. type X509CertificateName struct { // Thumbprint for the Issuer of the Certificate. IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty"` // Common Name of the Certificate. Name *string `json:"name,omitempty"` } func populate(m map[string]interface{}, k string, v interface{}) { if v == nil { return } else if azcore.IsNullValue(v) { m[k] = nil } else if !reflect.ValueOf(v).IsNil() { m[k] = v } } func unpopulate(data json.RawMessage, v interface{}) error { if data == nil { return nil } return json.Unmarshal(data, v) }