blob: 0b56eb8ac2198d96aa59fd0f68588ae2d902ac90 [file] [log] [blame]
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="firebaserules_v1.html">Firebase Rules API</a> . <a href="firebaserules_v1.projects.html">projects</a> . <a href="firebaserules_v1.projects.releases.html">releases</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="#create">create(name=None, body, x__xgafv=None)</a></code></p>
79<p class="firstline">Create a `Release`.</p>
80<p class="toc_element">
81 <code><a href="#delete">delete(name=None, x__xgafv=None)</a></code></p>
82<p class="firstline">Delete a `Release` by resource name.</p>
83<p class="toc_element">
84 <code><a href="#get">get(name=None, x__xgafv=None)</a></code></p>
85<p class="firstline">Get a `Release` by name.</p>
86<p class="toc_element">
87 <code><a href="#list">list(name=None, pageSize=None, filter=None, pageToken=None, x__xgafv=None)</a></code></p>
88<p class="firstline">List the `Release` values for a project. This list may optionally be</p>
89<p class="toc_element">
90 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
91<p class="firstline">Retrieves the next page of results.</p>
92<p class="toc_element">
93 <code><a href="#update">update(name=None, body, x__xgafv=None)</a></code></p>
94<p class="firstline">Update a `Release`.</p>
95<h3>Method Details</h3>
96<div class="method">
97 <code class="details" id="create">create(name=None, body, x__xgafv=None)</code>
98 <pre>Create a `Release`.
99
100Release names should reflect the developer's deployment practices. For
101example, the release name may include the environment name, application
102name, application version, or any other name meaningful to the developer.
103Once a `Release` refers to a `Ruleset`, the rules can be enforced by
104Firebase Rules-enabled services.
105
106More than one `Release` may be 'live' concurrently. Consider the following
107three `Release` names for `projects/foo` and the `Ruleset` to which they
108refer.
109
110Release Name | Ruleset Name
111--------------------------------|-------------
112projects/foo/releases/prod | projects/foo/rulesets/uuid123
113projects/foo/releases/prod/beta | projects/foo/rulesets/uuid123
114projects/foo/releases/prod/v23 | projects/foo/rulesets/uuid456
115
116The table reflects the `Ruleset` rollout in progress. The `prod` and
117`prod/beta` releases refer to the same `Ruleset`. However, `prod/v23`
118refers to a new `Ruleset`. The `Ruleset` reference for a `Release` may be
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700119updated using the UpdateRelease method.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700120
121Args:
122 name: string, Resource name for the project which owns this `Release`.
123
124Format: `projects/{project_id}` (required)
125 body: object, The request body. (required)
126 The object takes the form of:
127
128{ # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
129 # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
130 "updateTime": "A String", # Time the release was updated.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700131 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700132 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
133 # exist the `Release` to be created.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700134 "name": "A String", # Resource name for the `Release`.
135 #
136 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
137 # which affords developers a great deal of flexibility in mapping the name
138 # to the style that best fits their existing development practices. For
139 # example, a name could refer to an environment, an app, a version, or some
140 # combination of three.
141 #
142 # In the table below, for the project name `projects/foo`, the following
143 # relative release paths show how flat and structured names might be chosen
144 # to match a desired development / deployment strategy.
145 #
146 # Use Case | Flat Name | Structured Name
147 # -------------|---------------------|----------------
148 # Environments | releases/qa | releases/qa
149 # Apps | releases/app1_qa | releases/app1/qa
150 # Versions | releases/app1_v2_qa | releases/app1/v2/qa
151 #
152 # The delimiter between the release name path elements can be almost anything
153 # and it should work equally well with the release name list filter, but in
154 # many ways the structured paths provide a clearer picture of the
155 # relationship between `Release` instances.
156 #
157 # Format: `projects/{project_id}/releases/{release_id}`
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700158 "createTime": "A String", # Time the release was created.
159 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700160 }
161
162 x__xgafv: string, V1 error format.
163 Allowed values
164 1 - v1 error format
165 2 - v2 error format
166
167Returns:
168 An object of the form:
169
170 { # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
171 # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
172 "updateTime": "A String", # Time the release was updated.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700173 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700174 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
175 # exist the `Release` to be created.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700176 "name": "A String", # Resource name for the `Release`.
177 #
178 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
179 # which affords developers a great deal of flexibility in mapping the name
180 # to the style that best fits their existing development practices. For
181 # example, a name could refer to an environment, an app, a version, or some
182 # combination of three.
183 #
184 # In the table below, for the project name `projects/foo`, the following
185 # relative release paths show how flat and structured names might be chosen
186 # to match a desired development / deployment strategy.
187 #
188 # Use Case | Flat Name | Structured Name
189 # -------------|---------------------|----------------
190 # Environments | releases/qa | releases/qa
191 # Apps | releases/app1_qa | releases/app1/qa
192 # Versions | releases/app1_v2_qa | releases/app1/v2/qa
193 #
194 # The delimiter between the release name path elements can be almost anything
195 # and it should work equally well with the release name list filter, but in
196 # many ways the structured paths provide a clearer picture of the
197 # relationship between `Release` instances.
198 #
199 # Format: `projects/{project_id}/releases/{release_id}`
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700200 "createTime": "A String", # Time the release was created.
201 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700202 }</pre>
203</div>
204
205<div class="method">
206 <code class="details" id="delete">delete(name=None, x__xgafv=None)</code>
207 <pre>Delete a `Release` by resource name.
208
209Args:
210 name: string, Resource name for the `Release` to delete.
211
212Format: `projects/{project_id}/releases/{release_id}` (required)
213 x__xgafv: string, V1 error format.
214 Allowed values
215 1 - v1 error format
216 2 - v2 error format
217
218Returns:
219 An object of the form:
220
221 { # A generic empty message that you can re-use to avoid defining duplicated
222 # empty messages in your APIs. A typical example is to use it as the request
223 # or the response type of an API method. For instance:
224 #
225 # service Foo {
226 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
227 # }
228 #
229 # The JSON representation for `Empty` is empty JSON object `{}`.
230 }</pre>
231</div>
232
233<div class="method">
234 <code class="details" id="get">get(name=None, x__xgafv=None)</code>
235 <pre>Get a `Release` by name.
236
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700237Args:
238 name: string, Resource name of the `Release`.
239
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700240Format: `projects/{project_id}/releases/{release_id}` (required)
241 x__xgafv: string, V1 error format.
242 Allowed values
243 1 - v1 error format
244 2 - v2 error format
245
246Returns:
247 An object of the form:
248
249 { # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
250 # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
251 "updateTime": "A String", # Time the release was updated.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700252 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700253 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
254 # exist the `Release` to be created.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700255 "name": "A String", # Resource name for the `Release`.
256 #
257 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
258 # which affords developers a great deal of flexibility in mapping the name
259 # to the style that best fits their existing development practices. For
260 # example, a name could refer to an environment, an app, a version, or some
261 # combination of three.
262 #
263 # In the table below, for the project name `projects/foo`, the following
264 # relative release paths show how flat and structured names might be chosen
265 # to match a desired development / deployment strategy.
266 #
267 # Use Case | Flat Name | Structured Name
268 # -------------|---------------------|----------------
269 # Environments | releases/qa | releases/qa
270 # Apps | releases/app1_qa | releases/app1/qa
271 # Versions | releases/app1_v2_qa | releases/app1/v2/qa
272 #
273 # The delimiter between the release name path elements can be almost anything
274 # and it should work equally well with the release name list filter, but in
275 # many ways the structured paths provide a clearer picture of the
276 # relationship between `Release` instances.
277 #
278 # Format: `projects/{project_id}/releases/{release_id}`
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700279 "createTime": "A String", # Time the release was created.
280 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700281 }</pre>
282</div>
283
284<div class="method">
285 <code class="details" id="list">list(name=None, pageSize=None, filter=None, pageToken=None, x__xgafv=None)</code>
286 <pre>List the `Release` values for a project. This list may optionally be
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700287filtered by `Release` name, `Ruleset` name, `TestSuite` name, or any
288combination thereof.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700289
290Args:
291 name: string, Resource name for the project.
292
293Format: `projects/{project_id}` (required)
294 pageSize: integer, Page size to load. Maximum of 100. Defaults to 10.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700295Note: `page_size` is just a hint and the service may choose to load fewer
296than `page_size` results due to the size of the output. To traverse all of
297the releases, the caller should iterate until the `page_token` on the
298response is empty.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700299 filter: string, `Release` filter. The list method supports filters with restrictions on the
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700300`Release.name`, `Release.ruleset_name`, and `Release.test_suite_name`.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700301
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700302Example 1: A filter of 'name=prod*' might return `Release`s with names
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700303within 'projects/foo' prefixed with 'prod':
304
305Name | Ruleset Name
306------------------------------|-------------
307projects/foo/releases/prod | projects/foo/rulesets/uuid1234
308projects/foo/releases/prod/v1 | projects/foo/rulesets/uuid1234
309projects/foo/releases/prod/v2 | projects/foo/rulesets/uuid8888
310
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700311Example 2: A filter of `name=prod* ruleset_name=uuid1234` would return only
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700312`Release` instances for 'projects/foo' with names prefixed with 'prod'
313referring to the same `Ruleset` name of 'uuid1234':
314
315Name | Ruleset Name
316------------------------------|-------------
317projects/foo/releases/prod | projects/foo/rulesets/1234
318projects/foo/releases/prod/v1 | projects/foo/rulesets/1234
319
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700320In the examples, the filter parameters refer to the search filters are
321relative to the project. Fully qualified prefixed may also be used. e.g.
322`test_suite_name=projects/foo/testsuites/uuid1`
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700323 pageToken: string, Next page token for the next batch of `Release` instances.
324 x__xgafv: string, V1 error format.
325 Allowed values
326 1 - v1 error format
327 2 - v2 error format
328
329Returns:
330 An object of the form:
331
332 { # The response for FirebaseRulesService.ListReleases.
333 "nextPageToken": "A String", # The pagination token to retrieve the next page of results. If the value is
334 # empty, no further results remain.
335 "releases": [ # List of `Release` instances.
336 { # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
337 # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
338 "updateTime": "A String", # Time the release was updated.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700339 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700340 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
341 # exist the `Release` to be created.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700342 "name": "A String", # Resource name for the `Release`.
343 #
344 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
345 # which affords developers a great deal of flexibility in mapping the name
346 # to the style that best fits their existing development practices. For
347 # example, a name could refer to an environment, an app, a version, or some
348 # combination of three.
349 #
350 # In the table below, for the project name `projects/foo`, the following
351 # relative release paths show how flat and structured names might be chosen
352 # to match a desired development / deployment strategy.
353 #
354 # Use Case | Flat Name | Structured Name
355 # -------------|---------------------|----------------
356 # Environments | releases/qa | releases/qa
357 # Apps | releases/app1_qa | releases/app1/qa
358 # Versions | releases/app1_v2_qa | releases/app1/v2/qa
359 #
360 # The delimiter between the release name path elements can be almost anything
361 # and it should work equally well with the release name list filter, but in
362 # many ways the structured paths provide a clearer picture of the
363 # relationship between `Release` instances.
364 #
365 # Format: `projects/{project_id}/releases/{release_id}`
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700366 "createTime": "A String", # Time the release was created.
367 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700368 },
369 ],
370 }</pre>
371</div>
372
373<div class="method">
374 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
375 <pre>Retrieves the next page of results.
376
377Args:
378 previous_request: The request for the previous page. (required)
379 previous_response: The response from the request for the previous page. (required)
380
381Returns:
382 A request object that you can call 'execute()' on to request the next
383 page. Returns None if there are no more items in the collection.
384 </pre>
385</div>
386
387<div class="method">
388 <code class="details" id="update">update(name=None, body, x__xgafv=None)</code>
389 <pre>Update a `Release`.
390
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700391Only updates to the `ruleset_name` and `test_suite_name` fields will be
392honored. `Release` rename is not supported. To create a `Release` use the
393CreateRelease method.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700394
395Args:
396 name: string, Resource name for the `Release`.
397
398`Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
399which affords developers a great deal of flexibility in mapping the name
400to the style that best fits their existing development practices. For
401example, a name could refer to an environment, an app, a version, or some
402combination of three.
403
404In the table below, for the project name `projects/foo`, the following
405relative release paths show how flat and structured names might be chosen
406to match a desired development / deployment strategy.
407
408Use Case | Flat Name | Structured Name
409-------------|---------------------|----------------
410Environments | releases/qa | releases/qa
411Apps | releases/app1_qa | releases/app1/qa
412Versions | releases/app1_v2_qa | releases/app1/v2/qa
413
414The delimiter between the release name path elements can be almost anything
415and it should work equally well with the release name list filter, but in
416many ways the structured paths provide a clearer picture of the
417relationship between `Release` instances.
418
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700419Format: `projects/{project_id}/releases/{release_id}` (required)
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700420 body: object, The request body. (required)
421 The object takes the form of:
422
423{ # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
424 # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
425 "updateTime": "A String", # Time the release was updated.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700426 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700427 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
428 # exist the `Release` to be created.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700429 "name": "A String", # Resource name for the `Release`.
430 #
431 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
432 # which affords developers a great deal of flexibility in mapping the name
433 # to the style that best fits their existing development practices. For
434 # example, a name could refer to an environment, an app, a version, or some
435 # combination of three.
436 #
437 # In the table below, for the project name `projects/foo`, the following
438 # relative release paths show how flat and structured names might be chosen
439 # to match a desired development / deployment strategy.
440 #
441 # Use Case | Flat Name | Structured Name
442 # -------------|---------------------|----------------
443 # Environments | releases/qa | releases/qa
444 # Apps | releases/app1_qa | releases/app1/qa
445 # Versions | releases/app1_v2_qa | releases/app1/v2/qa
446 #
447 # The delimiter between the release name path elements can be almost anything
448 # and it should work equally well with the release name list filter, but in
449 # many ways the structured paths provide a clearer picture of the
450 # relationship between `Release` instances.
451 #
452 # Format: `projects/{project_id}/releases/{release_id}`
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700453 "createTime": "A String", # Time the release was created.
454 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700455 }
456
457 x__xgafv: string, V1 error format.
458 Allowed values
459 1 - v1 error format
460 2 - v2 error format
461
462Returns:
463 An object of the form:
464
465 { # `Release` is a named reference to a `Ruleset`. Once a `Release` refers to a
466 # `Ruleset`, rules-enabled services will be able to enforce the `Ruleset`.
467 "updateTime": "A String", # Time the release was updated.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700468 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700469 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must
470 # exist the `Release` to be created.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700471 "name": "A String", # Resource name for the `Release`.
472 #
473 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2`
474 # which affords developers a great deal of flexibility in mapping the name
475 # to the style that best fits their existing development practices. For
476 # example, a name could refer to an environment, an app, a version, or some
477 # combination of three.
478 #
479 # In the table below, for the project name `projects/foo`, the following
480 # relative release paths show how flat and structured names might be chosen
481 # to match a desired development / deployment strategy.
482 #
483 # Use Case | Flat Name | Structured Name
484 # -------------|---------------------|----------------
485 # Environments | releases/qa | releases/qa
486 # Apps | releases/app1_qa | releases/app1/qa
487 # Versions | releases/app1_v2_qa | releases/app1/v2/qa
488 #
489 # The delimiter between the release name path elements can be almost anything
490 # and it should work equally well with the release name list filter, but in
491 # many ways the structured paths provide a clearer picture of the
492 # relationship between `Release` instances.
493 #
494 # Format: `projects/{project_id}/releases/{release_id}`
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700495 "createTime": "A String", # Time the release was created.
496 # Output only.
Jon Wayne Parrott0a471d32016-05-19 10:54:38 -0700497 }</pre>
498</div>
499
500</body></html>