Class: Azure::ApiManagement::Mgmt::V2016_07_07::Models::ProductContract

Inherits:
Object
  • Object
show all
Includes:
MsRestAzure
Defined in:
lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb

Overview

Product profile.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Attribute Details

#approval_requiredBoolean

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.

Returns:

  • (Boolean)

    whether subscription approval is required. If false,



48
49
50
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 48

def approval_required
  @approval_required
end

#descriptionString

Returns Product description. May include HTML formatting tags.

Returns:

  • (String)

    Product description. May include HTML formatting tags.



25
26
27
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 25

def description
  @description
end

#idString

Management service instance. The value is a valid relative URL in the format of /products/productId where productId is a product identifier.

Returns:

  • (String)

    Uniquely identifies the product within the current API



19
20
21
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 19

def id
  @id
end

#nameString

Returns Product name.

Returns:

  • (String)

    Product name.



22
23
24
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 22

def name
  @name
end

#stateProductStateContract

Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is NotPublished. Possible values include: ‘NotPublished’, ‘Published’. Default value: ‘NotPublished’ .

Returns:



61
62
63
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 61

def state
  @state
end

#subscription_requiredBoolean

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. Default value: true .

Returns:

  • (Boolean)

    Whether a product subscription is required for



40
41
42
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 40

def subscription_required
  @subscription_required
end

#subscriptions_limitInteger

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.

Returns:

  • (Integer)

    Whether the number of subscriptions a user can have



54
55
56
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 54

def subscriptions_limit
  @subscriptions_limit
end

#termsString

to the product will be presented and required to accept these terms before they can complete the subscription process.

Returns:

  • (String)

    Product terms of use. Developers trying to subscribe



30
31
32
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 30

def terms
  @terms
end

Class Method Details

.mapperObject

Mapper for ProductContract class as Ruby Hash. This will be used for serialization/deserialization.



68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
# File 'lib/2016-07-07/generated/azure_mgmt_api_management/models/product_contract.rb', line 68

def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'ProductContract',
    type: {
      name: 'Composite',
      class_name: 'ProductContract',
      model_properties: {
        id: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'id',
          type: {
            name: 'String'
          }
        },
        name: {
          client_side_validation: true,
          required: true,
          serialized_name: 'name',
          constraints: {
            MaxLength: 300,
            MinLength: 1
          },
          type: {
            name: 'String'
          }
        },
        description: {
          client_side_validation: true,
          required: false,
          serialized_name: 'description',
          constraints: {
            MaxLength: 1000,
            MinLength: 1
          },
          type: {
            name: 'String'
          }
        },
        terms: {
          client_side_validation: true,
          required: false,
          serialized_name: 'terms',
          type: {
            name: 'String'
          }
        },
        subscription_required: {
          client_side_validation: true,
          required: false,
          serialized_name: 'subscriptionRequired',
          default_value: true,
          type: {
            name: 'Boolean'
          }
        },
        approval_required: {
          client_side_validation: true,
          required: false,
          serialized_name: 'approvalRequired',
          type: {
            name: 'Boolean'
          }
        },
        subscriptions_limit: {
          client_side_validation: true,
          required: false,
          serialized_name: 'subscriptionsLimit',
          type: {
            name: 'Number'
          }
        },
        state: {
          client_side_validation: true,
          required: false,
          serialized_name: 'state',
          default_value: 'NotPublished',
          type: {
            name: 'Enum',
            module: 'ProductStateContract'
          }
        }
      }
    }
  }
end