1 <html><body> 2 <style> 3 4 body, 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 15 body { 16 font-size: 13px; 17 padding: 1em; 18 } 19 20 h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23 } 24 25 h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28 } 29 30 h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34 } 35 36 pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39 } 40 41 pre { 42 margin-top: 0.5em; 43 } 44 45 h1, h2, h3, p { 46 font-family: Arial, sans serif; 47 } 48 49 h1, 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, 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, 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, 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, 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, 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, body, x__xgafv=None)</code> 98 <pre>Create a `Release`. 99 100 Release names should reflect the developer's deployment practices. For 101 example, the release name may include the environment name, application 102 name, application version, or any other name meaningful to the developer. 103 Once a `Release` refers to a `Ruleset`, the rules can be enforced by 104 Firebase Rules-enabled services. 105 106 More than one `Release` may be 'live' concurrently. Consider the following 107 three `Release` names for `projects/foo` and the `Ruleset` to which they 108 refer. 109 110 Release Name | Ruleset Name 111 --------------------------------|------------- 112 projects/foo/releases/prod | projects/foo/rulesets/uuid123 113 projects/foo/releases/prod/beta | projects/foo/rulesets/uuid123 114 projects/foo/releases/prod/v23 | projects/foo/rulesets/uuid456 115 116 The table reflects the `Ruleset` rollout in progress. The `prod` and 117 `prod/beta` releases refer to the same `Ruleset`. However, `prod/v23` 118 refers to a new `Ruleset`. The `Ruleset` reference for a `Release` may be 119 updated using the UpdateRelease method. 120 121 Args: 122 name: string, Resource name for the project which owns this `Release`. 123 124 Format: `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. 131 # Output only. 132 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must 133 # exist the `Release` to be created. 134 "createTime": "A String", # Time the release was created. 135 # Output only. 136 "name": "A String", # Resource name for the `Release`. 137 # 138 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 139 # which affords developers a great deal of flexibility in mapping the name 140 # to the style that best fits their existing development practices. For 141 # example, a name could refer to an environment, an app, a version, or some 142 # combination of three. 143 # 144 # In the table below, for the project name `projects/foo`, the following 145 # relative release paths show how flat and structured names might be chosen 146 # to match a desired development / deployment strategy. 147 # 148 # Use Case | Flat Name | Structured Name 149 # -------------|---------------------|---------------- 150 # Environments | releases/qa | releases/qa 151 # Apps | releases/app1_qa | releases/app1/qa 152 # Versions | releases/app1_v2_qa | releases/app1/v2/qa 153 # 154 # The delimiter between the release name path elements can be almost anything 155 # and it should work equally well with the release name list filter, but in 156 # many ways the structured paths provide a clearer picture of the 157 # relationship between `Release` instances. 158 # 159 # Format: `projects/{project_id}/releases/{release_id}` 160 } 161 162 x__xgafv: string, V1 error format. 163 Allowed values 164 1 - v1 error format 165 2 - v2 error format 166 167 Returns: 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. 173 # Output only. 174 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must 175 # exist the `Release` to be created. 176 "createTime": "A String", # Time the release was created. 177 # Output only. 178 "name": "A String", # Resource name for the `Release`. 179 # 180 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 181 # which affords developers a great deal of flexibility in mapping the name 182 # to the style that best fits their existing development practices. For 183 # example, a name could refer to an environment, an app, a version, or some 184 # combination of three. 185 # 186 # In the table below, for the project name `projects/foo`, the following 187 # relative release paths show how flat and structured names might be chosen 188 # to match a desired development / deployment strategy. 189 # 190 # Use Case | Flat Name | Structured Name 191 # -------------|---------------------|---------------- 192 # Environments | releases/qa | releases/qa 193 # Apps | releases/app1_qa | releases/app1/qa 194 # Versions | releases/app1_v2_qa | releases/app1/v2/qa 195 # 196 # The delimiter between the release name path elements can be almost anything 197 # and it should work equally well with the release name list filter, but in 198 # many ways the structured paths provide a clearer picture of the 199 # relationship between `Release` instances. 200 # 201 # Format: `projects/{project_id}/releases/{release_id}` 202 }</pre> 203 </div> 204 205 <div class="method"> 206 <code class="details" id="delete">delete(name, x__xgafv=None)</code> 207 <pre>Delete a `Release` by resource name. 208 209 Args: 210 name: string, Resource name for the `Release` to delete. 211 212 Format: `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 218 Returns: 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, x__xgafv=None)</code> 235 <pre>Get a `Release` by name. 236 237 Args: 238 name: string, Resource name of the `Release`. 239 240 Format: `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 246 Returns: 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. 252 # Output only. 253 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must 254 # exist the `Release` to be created. 255 "createTime": "A String", # Time the release was created. 256 # Output only. 257 "name": "A String", # Resource name for the `Release`. 258 # 259 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 260 # which affords developers a great deal of flexibility in mapping the name 261 # to the style that best fits their existing development practices. For 262 # example, a name could refer to an environment, an app, a version, or some 263 # combination of three. 264 # 265 # In the table below, for the project name `projects/foo`, the following 266 # relative release paths show how flat and structured names might be chosen 267 # to match a desired development / deployment strategy. 268 # 269 # Use Case | Flat Name | Structured Name 270 # -------------|---------------------|---------------- 271 # Environments | releases/qa | releases/qa 272 # Apps | releases/app1_qa | releases/app1/qa 273 # Versions | releases/app1_v2_qa | releases/app1/v2/qa 274 # 275 # The delimiter between the release name path elements can be almost anything 276 # and it should work equally well with the release name list filter, but in 277 # many ways the structured paths provide a clearer picture of the 278 # relationship between `Release` instances. 279 # 280 # Format: `projects/{project_id}/releases/{release_id}` 281 }</pre> 282 </div> 283 284 <div class="method"> 285 <code class="details" id="list">list(name, pageSize=None, filter=None, pageToken=None, x__xgafv=None)</code> 286 <pre>List the `Release` values for a project. This list may optionally be 287 filtered by `Release` name, `Ruleset` name, `TestSuite` name, or any 288 combination thereof. 289 290 Args: 291 name: string, Resource name for the project. 292 293 Format: `projects/{project_id}` (required) 294 pageSize: integer, Page size to load. Maximum of 100. Defaults to 10. 295 Note: `page_size` is just a hint and the service may choose to load fewer 296 than `page_size` results due to the size of the output. To traverse all of 297 the releases, the caller should iterate until the `page_token` on the 298 response is empty. 299 filter: string, `Release` filter. The list method supports filters with restrictions on the 300 `Release.name`, `Release.ruleset_name`, and `Release.test_suite_name`. 301 302 Example 1: A filter of 'name=prod*' might return `Release`s with names 303 within 'projects/foo' prefixed with 'prod': 304 305 Name | Ruleset Name 306 ------------------------------|------------- 307 projects/foo/releases/prod | projects/foo/rulesets/uuid1234 308 projects/foo/releases/prod/v1 | projects/foo/rulesets/uuid1234 309 projects/foo/releases/prod/v2 | projects/foo/rulesets/uuid8888 310 311 Example 2: A filter of `name=prod* ruleset_name=uuid1234` would return only 312 `Release` instances for 'projects/foo' with names prefixed with 'prod' 313 referring to the same `Ruleset` name of 'uuid1234': 314 315 Name | Ruleset Name 316 ------------------------------|------------- 317 projects/foo/releases/prod | projects/foo/rulesets/1234 318 projects/foo/releases/prod/v1 | projects/foo/rulesets/1234 319 320 In the examples, the filter parameters refer to the search filters are 321 relative to the project. Fully qualified prefixed may also be used. e.g. 322 `test_suite_name=projects/foo/testsuites/uuid1` 323 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 329 Returns: 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. 339 # Output only. 340 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must 341 # exist the `Release` to be created. 342 "createTime": "A String", # Time the release was created. 343 # Output only. 344 "name": "A String", # Resource name for the `Release`. 345 # 346 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 347 # which affords developers a great deal of flexibility in mapping the name 348 # to the style that best fits their existing development practices. For 349 # example, a name could refer to an environment, an app, a version, or some 350 # combination of three. 351 # 352 # In the table below, for the project name `projects/foo`, the following 353 # relative release paths show how flat and structured names might be chosen 354 # to match a desired development / deployment strategy. 355 # 356 # Use Case | Flat Name | Structured Name 357 # -------------|---------------------|---------------- 358 # Environments | releases/qa | releases/qa 359 # Apps | releases/app1_qa | releases/app1/qa 360 # Versions | releases/app1_v2_qa | releases/app1/v2/qa 361 # 362 # The delimiter between the release name path elements can be almost anything 363 # and it should work equally well with the release name list filter, but in 364 # many ways the structured paths provide a clearer picture of the 365 # relationship between `Release` instances. 366 # 367 # Format: `projects/{project_id}/releases/{release_id}` 368 }, 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 377 Args: 378 previous_request: The request for the previous page. (required) 379 previous_response: The response from the request for the previous page. (required) 380 381 Returns: 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, body, x__xgafv=None)</code> 389 <pre>Update a `Release`. 390 391 Only updates to the `ruleset_name` and `test_suite_name` fields will be 392 honored. `Release` rename is not supported. To create a `Release` use the 393 CreateRelease method. 394 395 Args: 396 name: string, Resource name for the `Release`. 397 398 `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 399 which affords developers a great deal of flexibility in mapping the name 400 to the style that best fits their existing development practices. For 401 example, a name could refer to an environment, an app, a version, or some 402 combination of three. 403 404 In the table below, for the project name `projects/foo`, the following 405 relative release paths show how flat and structured names might be chosen 406 to match a desired development / deployment strategy. 407 408 Use Case | Flat Name | Structured Name 409 -------------|---------------------|---------------- 410 Environments | releases/qa | releases/qa 411 Apps | releases/app1_qa | releases/app1/qa 412 Versions | releases/app1_v2_qa | releases/app1/v2/qa 413 414 The delimiter between the release name path elements can be almost anything 415 and it should work equally well with the release name list filter, but in 416 many ways the structured paths provide a clearer picture of the 417 relationship between `Release` instances. 418 419 Format: `projects/{project_id}/releases/{release_id}` (required) 420 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. 426 # Output only. 427 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must 428 # exist the `Release` to be created. 429 "createTime": "A String", # Time the release was created. 430 # Output only. 431 "name": "A String", # Resource name for the `Release`. 432 # 433 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 434 # which affords developers a great deal of flexibility in mapping the name 435 # to the style that best fits their existing development practices. For 436 # example, a name could refer to an environment, an app, a version, or some 437 # combination of three. 438 # 439 # In the table below, for the project name `projects/foo`, the following 440 # relative release paths show how flat and structured names might be chosen 441 # to match a desired development / deployment strategy. 442 # 443 # Use Case | Flat Name | Structured Name 444 # -------------|---------------------|---------------- 445 # Environments | releases/qa | releases/qa 446 # Apps | releases/app1_qa | releases/app1/qa 447 # Versions | releases/app1_v2_qa | releases/app1/v2/qa 448 # 449 # The delimiter between the release name path elements can be almost anything 450 # and it should work equally well with the release name list filter, but in 451 # many ways the structured paths provide a clearer picture of the 452 # relationship between `Release` instances. 453 # 454 # Format: `projects/{project_id}/releases/{release_id}` 455 } 456 457 x__xgafv: string, V1 error format. 458 Allowed values 459 1 - v1 error format 460 2 - v2 error format 461 462 Returns: 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. 468 # Output only. 469 "rulesetName": "A String", # Name of the `Ruleset` referred to by this `Release`. The `Ruleset` must 470 # exist the `Release` to be created. 471 "createTime": "A String", # Time the release was created. 472 # Output only. 473 "name": "A String", # Resource name for the `Release`. 474 # 475 # `Release` names may be structured `app1/prod/v2` or flat `app1_prod_v2` 476 # which affords developers a great deal of flexibility in mapping the name 477 # to the style that best fits their existing development practices. For 478 # example, a name could refer to an environment, an app, a version, or some 479 # combination of three. 480 # 481 # In the table below, for the project name `projects/foo`, the following 482 # relative release paths show how flat and structured names might be chosen 483 # to match a desired development / deployment strategy. 484 # 485 # Use Case | Flat Name | Structured Name 486 # -------------|---------------------|---------------- 487 # Environments | releases/qa | releases/qa 488 # Apps | releases/app1_qa | releases/app1/qa 489 # Versions | releases/app1_v2_qa | releases/app1/v2/qa 490 # 491 # The delimiter between the release name path elements can be almost anything 492 # and it should work equally well with the release name list filter, but in 493 # many ways the structured paths provide a clearer picture of the 494 # relationship between `Release` instances. 495 # 496 # Format: `projects/{project_id}/releases/{release_id}` 497 }</pre> 498 </div> 499 500 </body></html>