File: apihub_v1.projects.locations.attributes.html

package info (click to toggle)
python-googleapi 2.180.0-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 527,124 kB
  • sloc: python: 11,076; javascript: 249; sh: 114; makefile: 59
file content (338 lines) | stat: -rw-r--r-- 29,674 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="apihub_v1.html">API hub API</a> . <a href="apihub_v1.projects.html">projects</a> . <a href="apihub_v1.projects.locations.html">locations</a> . <a href="apihub_v1.projects.locations.attributes.html">attributes</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, attributeId=None, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Create a user defined attribute. Certain pre defined attributes are already created by the API hub. These attributes will have type as `SYSTEM_DEFINED` and can be listed via ListAttributes method. Allowed values for the same can be updated via UpdateAttribute method.</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Delete an attribute. Note: System defined attributes cannot be deleted. All associations of the attribute being deleted with any API hub resource will also get deleted.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Get details about the attribute.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">List all attributes.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Update the attribute. The following fields in the Attribute resource can be updated: * display_name The display name can be updated for user defined attributes only. * description The description can be updated for user defined attributes only. * allowed_values To update the list of allowed values, clients need to use the fetched list of allowed values and add or remove values to or from the same list. The mutable allowed values can be updated for both user defined and System defined attributes. The immutable allowed values cannot be updated or deleted. The updated list of allowed values cannot be empty. If an allowed value that is already used by some resource's attribute is deleted, then the association between the resource and the attribute value will also be deleted. * cardinality The cardinality can be updated for user defined attributes only. Cardinality can only be increased during an update. The update_mask should be used to specify the fields being updated.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, attributeId=None, body=None, x__xgafv=None)</code>
  <pre>Create a user defined attribute. Certain pre defined attributes are already created by the API hub. These attributes will have type as `SYSTEM_DEFINED` and can be listed via ListAttributes method. Allowed values for the same can be updated via UpdateAttribute method.

Args:
  parent: string, Required. The parent resource for Attribute. Format: `projects/{project}/locations/{location}` (required)
  body: object, The request body.
    The object takes the form of:

{ # An attribute in the API Hub. An attribute is a name value pair which can be attached to different resources in the API hub based on the scope of the attribute. Attributes can either be pre-defined by the API Hub or created by users.
  &quot;allowedValues&quot;: [ # Optional. The list of allowed values when the attribute value is of type enum. This is required when the data_type of the attribute is ENUM. The maximum number of allowed values of an attribute will be 1000.
    { # The value that can be assigned to the attribute when the data type is enum.
      &quot;description&quot;: &quot;A String&quot;, # Optional. The detailed description of the allowed value.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the allowed value.
      &quot;id&quot;: &quot;A String&quot;, # Required. The ID of the allowed value. * If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource. * If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates. This value should be 4-63 characters, and valid characters are /a-z-/.
      &quot;immutable&quot;: True or False, # Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
    },
  ],
  &quot;cardinality&quot;: 42, # Optional. The maximum number of values that the attribute can have when associated with an API Hub resource. Cardinality 1 would represent a single-valued attribute. It must not be less than 1 or greater than 20. If not specified, the cardinality would be set to 1 by default and represent a single-valued attribute.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was created.
  &quot;dataType&quot;: &quot;A String&quot;, # Required. The type of the data of the attribute.
  &quot;definitionType&quot;: &quot;A String&quot;, # Output only. The definition type of the attribute.
  &quot;description&quot;: &quot;A String&quot;, # Optional. The description of the attribute.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the attribute.
  &quot;mandatory&quot;: True or False, # Output only. When mandatory is true, the attribute is mandatory for the resource specified in the scope. Only System defined attributes can be mandatory.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}`
  &quot;scope&quot;: &quot;A String&quot;, # Required. The scope of the attribute. It represents the resource in the API Hub to which the attribute can be linked.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was last updated.
}

  attributeId: string, Optional. The ID to use for the attribute, which will become the final component of the attribute&#x27;s resource name. This field is optional. * If provided, the same will be used. The service will throw an error if the specified id is already used by another attribute resource in the API hub. * If not provided, a system generated id will be used. This value should be 4-500 characters, and valid characters are /a-z[0-9]-_/.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An attribute in the API Hub. An attribute is a name value pair which can be attached to different resources in the API hub based on the scope of the attribute. Attributes can either be pre-defined by the API Hub or created by users.
  &quot;allowedValues&quot;: [ # Optional. The list of allowed values when the attribute value is of type enum. This is required when the data_type of the attribute is ENUM. The maximum number of allowed values of an attribute will be 1000.
    { # The value that can be assigned to the attribute when the data type is enum.
      &quot;description&quot;: &quot;A String&quot;, # Optional. The detailed description of the allowed value.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the allowed value.
      &quot;id&quot;: &quot;A String&quot;, # Required. The ID of the allowed value. * If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource. * If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates. This value should be 4-63 characters, and valid characters are /a-z-/.
      &quot;immutable&quot;: True or False, # Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
    },
  ],
  &quot;cardinality&quot;: 42, # Optional. The maximum number of values that the attribute can have when associated with an API Hub resource. Cardinality 1 would represent a single-valued attribute. It must not be less than 1 or greater than 20. If not specified, the cardinality would be set to 1 by default and represent a single-valued attribute.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was created.
  &quot;dataType&quot;: &quot;A String&quot;, # Required. The type of the data of the attribute.
  &quot;definitionType&quot;: &quot;A String&quot;, # Output only. The definition type of the attribute.
  &quot;description&quot;: &quot;A String&quot;, # Optional. The description of the attribute.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the attribute.
  &quot;mandatory&quot;: True or False, # Output only. When mandatory is true, the attribute is mandatory for the resource specified in the scope. Only System defined attributes can be mandatory.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}`
  &quot;scope&quot;: &quot;A String&quot;, # Required. The scope of the attribute. It represents the resource in the API Hub to which the attribute can be linked.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was last updated.
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
  <pre>Delete an attribute. Note: System defined attributes cannot be deleted. All associations of the attribute being deleted with any API hub resource will also get deleted.

Args:
  name: string, Required. The name of the attribute to delete. Format: `projects/{project}/locations/{location}/attributes/{attribute}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Get details about the attribute.

Args:
  name: string, Required. The name of the attribute to retrieve. Format: `projects/{project}/locations/{location}/attributes/{attribute}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An attribute in the API Hub. An attribute is a name value pair which can be attached to different resources in the API hub based on the scope of the attribute. Attributes can either be pre-defined by the API Hub or created by users.
  &quot;allowedValues&quot;: [ # Optional. The list of allowed values when the attribute value is of type enum. This is required when the data_type of the attribute is ENUM. The maximum number of allowed values of an attribute will be 1000.
    { # The value that can be assigned to the attribute when the data type is enum.
      &quot;description&quot;: &quot;A String&quot;, # Optional. The detailed description of the allowed value.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the allowed value.
      &quot;id&quot;: &quot;A String&quot;, # Required. The ID of the allowed value. * If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource. * If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates. This value should be 4-63 characters, and valid characters are /a-z-/.
      &quot;immutable&quot;: True or False, # Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
    },
  ],
  &quot;cardinality&quot;: 42, # Optional. The maximum number of values that the attribute can have when associated with an API Hub resource. Cardinality 1 would represent a single-valued attribute. It must not be less than 1 or greater than 20. If not specified, the cardinality would be set to 1 by default and represent a single-valued attribute.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was created.
  &quot;dataType&quot;: &quot;A String&quot;, # Required. The type of the data of the attribute.
  &quot;definitionType&quot;: &quot;A String&quot;, # Output only. The definition type of the attribute.
  &quot;description&quot;: &quot;A String&quot;, # Optional. The description of the attribute.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the attribute.
  &quot;mandatory&quot;: True or False, # Output only. When mandatory is true, the attribute is mandatory for the resource specified in the scope. Only System defined attributes can be mandatory.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}`
  &quot;scope&quot;: &quot;A String&quot;, # Required. The scope of the attribute. It represents the resource in the API Hub to which the attribute can be linked.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was last updated.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>List all attributes.

Args:
  parent: string, Required. The parent resource for Attribute. Format: `projects/{project}/locations/{location}` (required)
  filter: string, Optional. An expression that filters the list of Attributes. A filter expression consists of a field name, a comparison operator, and a value for filtering. The value must be a string or a boolean. The comparison operator must be one of: `&lt;`, `&gt;` or `=`. Filters are not case sensitive. The following fields in the `Attribute` are eligible for filtering: * `display_name` - The display name of the Attribute. Allowed comparison operators: `=`. * `definition_type` - The definition type of the attribute. Allowed comparison operators: `=`. * `scope` - The scope of the attribute. Allowed comparison operators: `=`. * `data_type` - The type of the data of the attribute. Allowed comparison operators: `=`. * `mandatory` - Denotes whether the attribute is mandatory or not. Allowed comparison operators: `=`. * `create_time` - The time at which the Attribute was created. The value should be in the (RFC3339)[https://tools.ietf.org/html/rfc3339] format. Allowed comparison operators: `&gt;` and `&lt;`. Expressions are combined with either `AND` logic operator or `OR` logical operator but not both of them together i.e. only one of the `AND` or `OR` operator can be used throughout the filter string and both the operators cannot be used together. No other logical operators are supported. At most three filter fields are allowed in the filter string and if provided more than that then `INVALID_ARGUMENT` error is returned by the API. Here are a few examples: * `display_name = production` - - The display name of the attribute is _production_. * `(display_name = production) AND (create_time &lt; \&quot;2021-08-15T14:50:00Z\&quot;) AND (create_time &gt; \&quot;2021-08-10T12:00:00Z\&quot;)` - The display name of the attribute is _production_ and the attribute was created before _2021-08-15 14:50:00 UTC_ and after _2021-08-10 12:00:00 UTC_. * `display_name = production OR scope = api` - The attribute where the display name is _production_ or the scope is _api_.
  pageSize: integer, Optional. The maximum number of attribute resources to return. The service may return fewer than this value. If unspecified, at most 50 attributes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
  pageToken: string, Optional. A page token, received from a previous `ListAttributes` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAttributes` must match the call that provided the page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The ListAttributes method&#x27;s response.
  &quot;attributes&quot;: [ # The list of all attributes.
    { # An attribute in the API Hub. An attribute is a name value pair which can be attached to different resources in the API hub based on the scope of the attribute. Attributes can either be pre-defined by the API Hub or created by users.
      &quot;allowedValues&quot;: [ # Optional. The list of allowed values when the attribute value is of type enum. This is required when the data_type of the attribute is ENUM. The maximum number of allowed values of an attribute will be 1000.
        { # The value that can be assigned to the attribute when the data type is enum.
          &quot;description&quot;: &quot;A String&quot;, # Optional. The detailed description of the allowed value.
          &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the allowed value.
          &quot;id&quot;: &quot;A String&quot;, # Required. The ID of the allowed value. * If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource. * If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates. This value should be 4-63 characters, and valid characters are /a-z-/.
          &quot;immutable&quot;: True or False, # Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
        },
      ],
      &quot;cardinality&quot;: 42, # Optional. The maximum number of values that the attribute can have when associated with an API Hub resource. Cardinality 1 would represent a single-valued attribute. It must not be less than 1 or greater than 20. If not specified, the cardinality would be set to 1 by default and represent a single-valued attribute.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was created.
      &quot;dataType&quot;: &quot;A String&quot;, # Required. The type of the data of the attribute.
      &quot;definitionType&quot;: &quot;A String&quot;, # Output only. The definition type of the attribute.
      &quot;description&quot;: &quot;A String&quot;, # Optional. The description of the attribute.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the attribute.
      &quot;mandatory&quot;: True or False, # Output only. When mandatory is true, the attribute is mandatory for the resource specified in the scope. Only System defined attributes can be mandatory.
      &quot;name&quot;: &quot;A String&quot;, # Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}`
      &quot;scope&quot;: &quot;A String&quot;, # Required. The scope of the attribute. It represents the resource in the API Hub to which the attribute can be linked.
      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was last updated.
    },
  ],
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Update the attribute. The following fields in the Attribute resource can be updated: * display_name The display name can be updated for user defined attributes only. * description The description can be updated for user defined attributes only. * allowed_values To update the list of allowed values, clients need to use the fetched list of allowed values and add or remove values to or from the same list. The mutable allowed values can be updated for both user defined and System defined attributes. The immutable allowed values cannot be updated or deleted. The updated list of allowed values cannot be empty. If an allowed value that is already used by some resource&#x27;s attribute is deleted, then the association between the resource and the attribute value will also be deleted. * cardinality The cardinality can be updated for user defined attributes only. Cardinality can only be increased during an update. The update_mask should be used to specify the fields being updated.

Args:
  name: string, Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}` (required)
  body: object, The request body.
    The object takes the form of:

{ # An attribute in the API Hub. An attribute is a name value pair which can be attached to different resources in the API hub based on the scope of the attribute. Attributes can either be pre-defined by the API Hub or created by users.
  &quot;allowedValues&quot;: [ # Optional. The list of allowed values when the attribute value is of type enum. This is required when the data_type of the attribute is ENUM. The maximum number of allowed values of an attribute will be 1000.
    { # The value that can be assigned to the attribute when the data type is enum.
      &quot;description&quot;: &quot;A String&quot;, # Optional. The detailed description of the allowed value.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the allowed value.
      &quot;id&quot;: &quot;A String&quot;, # Required. The ID of the allowed value. * If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource. * If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates. This value should be 4-63 characters, and valid characters are /a-z-/.
      &quot;immutable&quot;: True or False, # Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
    },
  ],
  &quot;cardinality&quot;: 42, # Optional. The maximum number of values that the attribute can have when associated with an API Hub resource. Cardinality 1 would represent a single-valued attribute. It must not be less than 1 or greater than 20. If not specified, the cardinality would be set to 1 by default and represent a single-valued attribute.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was created.
  &quot;dataType&quot;: &quot;A String&quot;, # Required. The type of the data of the attribute.
  &quot;definitionType&quot;: &quot;A String&quot;, # Output only. The definition type of the attribute.
  &quot;description&quot;: &quot;A String&quot;, # Optional. The description of the attribute.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the attribute.
  &quot;mandatory&quot;: True or False, # Output only. When mandatory is true, the attribute is mandatory for the resource specified in the scope. Only System defined attributes can be mandatory.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}`
  &quot;scope&quot;: &quot;A String&quot;, # Required. The scope of the attribute. It represents the resource in the API Hub to which the attribute can be linked.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was last updated.
}

  updateMask: string, Required. The list of fields to update.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An attribute in the API Hub. An attribute is a name value pair which can be attached to different resources in the API hub based on the scope of the attribute. Attributes can either be pre-defined by the API Hub or created by users.
  &quot;allowedValues&quot;: [ # Optional. The list of allowed values when the attribute value is of type enum. This is required when the data_type of the attribute is ENUM. The maximum number of allowed values of an attribute will be 1000.
    { # The value that can be assigned to the attribute when the data type is enum.
      &quot;description&quot;: &quot;A String&quot;, # Optional. The detailed description of the allowed value.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the allowed value.
      &quot;id&quot;: &quot;A String&quot;, # Required. The ID of the allowed value. * If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource. * If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates. This value should be 4-63 characters, and valid characters are /a-z-/.
      &quot;immutable&quot;: True or False, # Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
    },
  ],
  &quot;cardinality&quot;: 42, # Optional. The maximum number of values that the attribute can have when associated with an API Hub resource. Cardinality 1 would represent a single-valued attribute. It must not be less than 1 or greater than 20. If not specified, the cardinality would be set to 1 by default and represent a single-valued attribute.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was created.
  &quot;dataType&quot;: &quot;A String&quot;, # Required. The type of the data of the attribute.
  &quot;definitionType&quot;: &quot;A String&quot;, # Output only. The definition type of the attribute.
  &quot;description&quot;: &quot;A String&quot;, # Optional. The description of the attribute.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of the attribute.
  &quot;mandatory&quot;: True or False, # Output only. When mandatory is true, the attribute is mandatory for the resource specified in the scope. Only System defined attributes can be mandatory.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The name of the attribute in the API Hub. Format: `projects/{project}/locations/{location}/attributes/{attribute}`
  &quot;scope&quot;: &quot;A String&quot;, # Required. The scope of the attribute. It represents the resource in the API Hub to which the attribute can be linked.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the attribute was last updated.
}</pre>
</div>

</body></html>