launchdarkly_api 18.0.1 → 18.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -5
  3. data/docs/AIConfigVariationPost.md +1 -1
  4. data/docs/AIConfigsBetaApi.md +1 -1
  5. data/docs/AccountMembersApi.md +72 -0
  6. data/docs/CovarianceInfoRep.md +22 -0
  7. data/docs/Environment.md +2 -0
  8. data/docs/Experiment.md +2 -0
  9. data/docs/ExperimentPost.md +3 -1
  10. data/docs/IterationInput.md +2 -0
  11. data/docs/IterationRep.md +3 -1
  12. data/docs/MetricsApi.md +2 -2
  13. data/docs/MetricsBetaApi.md +3 -3
  14. data/docs/PostReleasePolicyRequest.md +1 -1
  15. data/docs/PutReleasePolicyRequest.md +1 -1
  16. data/docs/ReleasePolicy.md +1 -1
  17. data/lib/launchdarkly_api/api/account_members_api.rb +68 -0
  18. data/lib/launchdarkly_api/api/metrics_api.rb +2 -2
  19. data/lib/launchdarkly_api/api/metrics_beta_api.rb +4 -4
  20. data/lib/launchdarkly_api/models/ai_config_variation_post.rb +0 -17
  21. data/lib/launchdarkly_api/{api/account_members_beta_api.rb → models/covariance_info_rep.rb} +264 -63
  22. data/lib/launchdarkly_api/models/environment.rb +10 -1
  23. data/lib/launchdarkly_api/models/experiment.rb +13 -1
  24. data/lib/launchdarkly_api/models/experiment_post.rb +16 -4
  25. data/lib/launchdarkly_api/models/iteration_input.rb +11 -1
  26. data/lib/launchdarkly_api/models/iteration_rep.rb +13 -4
  27. data/lib/launchdarkly_api/version.rb +1 -1
  28. data/lib/launchdarkly_api.rb +1 -1
  29. data/spec/api/account_members_api_spec.rb +12 -0
  30. data/spec/api/metrics_api_spec.rb +1 -1
  31. data/spec/api/metrics_beta_api_spec.rb +2 -2
  32. data/spec/{api/account_members_beta_api_spec.rb → models/covariance_info_rep_spec.rb} +18 -17
  33. data/spec/models/environment_spec.rb +6 -0
  34. data/spec/models/experiment_post_spec.rb +6 -0
  35. data/spec/models/experiment_spec.rb +6 -0
  36. data/spec/models/iteration_input_spec.rb +6 -0
  37. data/spec/models/iteration_rep_spec.rb +6 -0
  38. metadata +6 -6
  39. data/docs/AccountMembersBetaApi.md +0 -79
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b14428981005cf38c18c3b4886c747a6e37d5d82d8a45fe24b0590c50c9a3bb0
4
- data.tar.gz: 7baaba74f8a98e5217d7c1cee23738944398a316f28281ed7734941708e99e6d
3
+ metadata.gz: 00e0607d1279d13394795f83997fb8fe902f8074ef93be287c8d71c26c3193f2
4
+ data.tar.gz: 8b2ccdcd3f7fb2872019fd9278f3e6a8119d1fd7884fc5a16cdbb4112a851ea3
5
5
  SHA512:
6
- metadata.gz: f63d82296ddccc539b26b809a8b4aba635c1b010a035150761a427ed66b6e628dab7a0029fbf7ef09b8bc5ec6f3fa089de4b5f6addad3d40f1241dd5588ea41e
7
- data.tar.gz: 2c038fad38164fd1a7c158b66d2b7e7682f2ae1014c83ba1203beb16f7ebdb869cae36f312d5cce3bb943951745eb8aa6eccb2b3d5d1b9a1c6e6d813bd8712a9
6
+ metadata.gz: 4984c7a783aa732d78a7368ed120544e9ba038aa4b7d39beed50d368c206fae77f1a049ecaef92d8536bd15ab14d6a3af4de0c1444cbcf698c33a618f9997493
7
+ data.tar.gz: 7c92fe762bb76ad077b852f40fb4de48df502ac933e6f135bdaa95edbf05d155dceecf604f2cfaae84e5ae49bb3e7709ff1943fcc381ead5e98d207a0e81506a
data/README.md CHANGED
@@ -450,7 +450,7 @@ To learn more about how EOL is determined, read LaunchDarkly's [End of Life (EOL
450
450
  This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
451
451
 
452
452
  - API version: 2.0
453
- - Package version: 18.0.1
453
+ - Package version: 18.1.0
454
454
  - Generator version: 7.16.0
455
455
  - Build package: org.openapitools.codegen.languages.RubyClientCodegen
456
456
  For more information, please visit [https://support.launchdarkly.com](https://support.launchdarkly.com)
@@ -468,16 +468,16 @@ gem build launchdarkly_api.gemspec
468
468
  Then either install the gem locally:
469
469
 
470
470
  ```shell
471
- gem install ./launchdarkly_api-18.0.1.gem
471
+ gem install ./launchdarkly_api-18.1.0.gem
472
472
  ```
473
473
 
474
- (for development, run `gem install --dev ./launchdarkly_api-18.0.1.gem` to install the development dependencies)
474
+ (for development, run `gem install --dev ./launchdarkly_api-18.1.0.gem` to install the development dependencies)
475
475
 
476
476
  or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
477
477
 
478
478
  Finally add this to the Gemfile:
479
479
 
480
- gem 'launchdarkly_api', '~> 18.0.1'
480
+ gem 'launchdarkly_api', '~> 18.1.0'
481
481
 
482
482
  ### Install from Git
483
483
 
@@ -564,9 +564,9 @@ Class | Method | HTTP request | Description
564
564
  *LaunchDarklyApi::AccountMembersApi* | [**get_member**](docs/AccountMembersApi.md#get_member) | **GET** /api/v2/members/{id} | Get account member
565
565
  *LaunchDarklyApi::AccountMembersApi* | [**get_members**](docs/AccountMembersApi.md#get_members) | **GET** /api/v2/members | List account members
566
566
  *LaunchDarklyApi::AccountMembersApi* | [**patch_member**](docs/AccountMembersApi.md#patch_member) | **PATCH** /api/v2/members/{id} | Modify an account member
567
+ *LaunchDarklyApi::AccountMembersApi* | [**patch_members**](docs/AccountMembersApi.md#patch_members) | **PATCH** /api/v2/members | Modify account members
567
568
  *LaunchDarklyApi::AccountMembersApi* | [**post_member_teams**](docs/AccountMembersApi.md#post_member_teams) | **POST** /api/v2/members/{id}/teams | Add a member to teams
568
569
  *LaunchDarklyApi::AccountMembersApi* | [**post_members**](docs/AccountMembersApi.md#post_members) | **POST** /api/v2/members | Invite new members
569
- *LaunchDarklyApi::AccountMembersBetaApi* | [**patch_members**](docs/AccountMembersBetaApi.md#patch_members) | **PATCH** /api/v2/members | Modify account members
570
570
  *LaunchDarklyApi::AccountUsageBetaApi* | [**get_contexts_clientside_usage**](docs/AccountUsageBetaApi.md#get_contexts_clientside_usage) | **GET** /api/v2/usage/clientside-contexts | Get contexts clientside usage
571
571
  *LaunchDarklyApi::AccountUsageBetaApi* | [**get_contexts_serverside_usage**](docs/AccountUsageBetaApi.md#get_contexts_serverside_usage) | **GET** /api/v2/usage/serverside-contexts | Get contexts serverside usage
572
572
  *LaunchDarklyApi::AccountUsageBetaApi* | [**get_contexts_total_usage**](docs/AccountUsageBetaApi.md#get_contexts_total_usage) | **GET** /api/v2/usage/total-contexts | Get contexts total usage
@@ -1001,6 +1001,7 @@ Class | Method | HTTP request | Description
1001
1001
  - [LaunchDarklyApi::Contexts](docs/Contexts.md)
1002
1002
  - [LaunchDarklyApi::CopiedFromEnv](docs/CopiedFromEnv.md)
1003
1003
  - [LaunchDarklyApi::CoreLink](docs/CoreLink.md)
1004
+ - [LaunchDarklyApi::CovarianceInfoRep](docs/CovarianceInfoRep.md)
1004
1005
  - [LaunchDarklyApi::CreateAnnouncementBody](docs/CreateAnnouncementBody.md)
1005
1006
  - [LaunchDarklyApi::CreateApprovalRequestRequest](docs/CreateApprovalRequestRequest.md)
1006
1007
  - [LaunchDarklyApi::CreateCopyFlagConfigApprovalRequestRequest](docs/CreateCopyFlagConfigApprovalRequestRequest.md)
@@ -8,7 +8,7 @@
8
8
  | **description** | **String** | Returns the description for the agent. This is only returned for agent variations. | [optional] |
9
9
  | **instructions** | **String** | Returns the instructions for the agent. This is only returned for agent variations. | [optional] |
10
10
  | **key** | **String** | | |
11
- | **messages** | [**Array<Message>**](Message.md) | | |
11
+ | **messages** | [**Array<Message>**](Message.md) | | [optional] |
12
12
  | **model** | **Object** | | [optional] |
13
13
  | **name** | **String** | | |
14
14
  | **model_config_key** | **String** | | [optional] |
@@ -1686,7 +1686,7 @@ api_instance = LaunchDarklyApi::AIConfigsBetaApi.new
1686
1686
  ld_api_version = 'beta' # String | Version of the endpoint.
1687
1687
  project_key = 'project_key_example' # String |
1688
1688
  config_key = 'config_key_example' # String |
1689
- ai_config_variation_post = LaunchDarklyApi::AIConfigVariationPost.new({key: 'key_example', messages: [LaunchDarklyApi::Message.new({content: 'content_example', role: 'role_example'})], name: 'name_example'}) # AIConfigVariationPost | AI Config variation object to create
1689
+ ai_config_variation_post = LaunchDarklyApi::AIConfigVariationPost.new({key: 'key_example', name: 'name_example'}) # AIConfigVariationPost | AI Config variation object to create
1690
1690
 
1691
1691
  begin
1692
1692
  # Create AI Config variation
@@ -8,6 +8,7 @@ All URIs are relative to *https://app.launchdarkly.com*
8
8
  | [**get_member**](AccountMembersApi.md#get_member) | **GET** /api/v2/members/{id} | Get account member |
9
9
  | [**get_members**](AccountMembersApi.md#get_members) | **GET** /api/v2/members | List account members |
10
10
  | [**patch_member**](AccountMembersApi.md#patch_member) | **PATCH** /api/v2/members/{id} | Modify an account member |
11
+ | [**patch_members**](AccountMembersApi.md#patch_members) | **PATCH** /api/v2/members | Modify account members |
11
12
  | [**post_member_teams**](AccountMembersApi.md#post_member_teams) | **POST** /api/v2/members/{id}/teams | Add a member to teams |
12
13
  | [**post_members**](AccountMembersApi.md#post_members) | **POST** /api/v2/members | Invite new members |
13
14
 
@@ -311,6 +312,77 @@ end
311
312
  - **Accept**: application/json
312
313
 
313
314
 
315
+ ## patch_members
316
+
317
+ > <BulkEditMembersRep> patch_members(members_patch_input)
318
+
319
+ Modify account members
320
+
321
+ > ### Full use of this API resource is an Enterprise feature > > The ability to perform a partial update to multiple members is available to customers on an Enterprise plan. If you are on another plan, you can update members individually. To learn more, [read about our pricing](https://launchdarkly.com/pricing/). To upgrade your plan, [contact Sales](https://launchdarkly.com/contact-sales/). Perform a partial update to multiple members. Updating members uses the semantic patch format. To make a semantic patch request, you must append `domain-model=launchdarkly.semanticpatch` to your `Content-Type` header. To learn more, read [Updates using semantic patch](https://launchdarkly.com/docs/api#updates-using-semantic-patch). ### Instructions Semantic patch requests support the following `kind` instructions for updating members. <details> <summary>Click to expand instructions for <strong>updating members</strong></summary> #### replaceMembersRoles Replaces the roles of the specified members. This also removes all custom roles assigned to the specified members. ##### Parameters - `value`: The new role. Must be a valid [base role](https://launchdarkly.com/docs/home/getting-started/vocabulary#base-role). To learn more, read [Roles](https://launchdarkly.com/docs/home/account/roles). - `memberIDs`: List of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceMembersRoles\", \"value\": \"reader\", \"memberIDs\": [ \"1234a56b7c89d012345e678f\", \"507f1f77bcf86cd799439011\" ] }] } ``` #### replaceAllMembersRoles Replaces the roles of all members. This also removes all custom roles assigned to the specified members. Members that match any of the filters are **excluded** from the update. ##### Parameters - `value`: The new role. Must be a valid [base role](https://launchdarkly.com/docs/home/getting-started/vocabulary#base-role). To learn more, read [Roles](https://launchdarkly.com/docs/home/account/roles). - `filterLastSeen`: (Optional) A JSON object with one of the following formats: - `{\"never\": true}` - Members that have never been active, such as those who have not accepted their invitation to LaunchDarkly, or have not logged in after being provisioned via SCIM. - `{\"noData\": true}` - Members that have not been active since LaunchDarkly began recording last seen timestamps. - `{\"before\": 1608672063611}` - Members that have not been active since the provided value, which should be a timestamp in Unix epoch milliseconds. - `filterQuery`: (Optional) A string that matches against the members' emails and names. It is not case sensitive. - `filterRoles`: (Optional) A `|` separated list of roles and custom roles. For the purposes of this filtering, `Owner` counts as `Admin`. - `filterTeamKey`: (Optional) A string that matches against the key of the team the members belong to. It is not case sensitive. - `ignoredMemberIDs`: (Optional) A list of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceAllMembersRoles\", \"value\": \"reader\", \"filterLastSeen\": { \"never\": true } }] } ``` #### replaceMembersCustomRoles Replaces the custom roles of the specified members. ##### Parameters - `values`: List of new custom roles. Must be a valid custom role key or ID. - `memberIDs`: List of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceMembersCustomRoles\", \"values\": [ \"example-custom-role\" ], \"memberIDs\": [ \"1234a56b7c89d012345e678f\", \"507f1f77bcf86cd799439011\" ] }] } ``` #### replaceAllMembersCustomRoles Replaces the custom roles of all members. Members that match any of the filters are **excluded** from the update. ##### Parameters - `values`: List of new roles. Must be a valid custom role key or ID. - `filterLastSeen`: (Optional) A JSON object with one of the following formats: - `{\"never\": true}` - Members that have never been active, such as those who have not accepted their invitation to LaunchDarkly, or have not logged in after being provisioned via SCIM. - `{\"noData\": true}` - Members that have not been active since LaunchDarkly began recording last seen timestamps. - `{\"before\": 1608672063611}` - Members that have not been active since the provided value, which should be a timestamp in Unix epoch milliseconds. - `filterQuery`: (Optional) A string that matches against the members' emails and names. It is not case sensitive. - `filterRoles`: (Optional) A `|` separated list of roles and custom roles. For the purposes of this filtering, `Owner` counts as `Admin`. - `filterTeamKey`: (Optional) A string that matches against the key of the team the members belong to. It is not case sensitive. - `ignoredMemberIDs`: (Optional) A list of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceAllMembersCustomRoles\", \"values\": [ \"example-custom-role\" ], \"filterLastSeen\": { \"never\": true } }] } ``` #### replaceMembersRoleAttributes Replaces the role attributes of the specified members. ##### Parameters - `value`: Map of role attribute keys to lists of values. - `memberIDs`: List of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceMembersRoleAttributes\", \"value\": { \"myRoleProjectKey\": [\"mobile\", \"web\"], \"myRoleEnvironmentKey\": [\"production\"] }, \"memberIDs\": [ \"1234a56b7c89d012345e678f\", \"507f1f77bcf86cd799439011\" ] }] } ``` </details>
322
+
323
+ ### Examples
324
+
325
+ ```ruby
326
+ require 'time'
327
+ require 'launchdarkly_api'
328
+ # setup authorization
329
+ LaunchDarklyApi.configure do |config|
330
+ # Configure API key authorization: ApiKey
331
+ config.api_key['Authorization'] = 'YOUR API KEY'
332
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
333
+ # config.api_key_prefix['Authorization'] = 'Bearer'
334
+ end
335
+
336
+ api_instance = LaunchDarklyApi::AccountMembersApi.new
337
+ members_patch_input = LaunchDarklyApi::MembersPatchInput.new({instructions: [{ key: 3.56}]}) # MembersPatchInput |
338
+
339
+ begin
340
+ # Modify account members
341
+ result = api_instance.patch_members(members_patch_input)
342
+ p result
343
+ rescue LaunchDarklyApi::ApiError => e
344
+ puts "Error when calling AccountMembersApi->patch_members: #{e}"
345
+ end
346
+ ```
347
+
348
+ #### Using the patch_members_with_http_info variant
349
+
350
+ This returns an Array which contains the response data, status code and headers.
351
+
352
+ > <Array(<BulkEditMembersRep>, Integer, Hash)> patch_members_with_http_info(members_patch_input)
353
+
354
+ ```ruby
355
+ begin
356
+ # Modify account members
357
+ data, status_code, headers = api_instance.patch_members_with_http_info(members_patch_input)
358
+ p status_code # => 2xx
359
+ p headers # => { ... }
360
+ p data # => <BulkEditMembersRep>
361
+ rescue LaunchDarklyApi::ApiError => e
362
+ puts "Error when calling AccountMembersApi->patch_members_with_http_info: #{e}"
363
+ end
364
+ ```
365
+
366
+ ### Parameters
367
+
368
+ | Name | Type | Description | Notes |
369
+ | ---- | ---- | ----------- | ----- |
370
+ | **members_patch_input** | [**MembersPatchInput**](MembersPatchInput.md) | | |
371
+
372
+ ### Return type
373
+
374
+ [**BulkEditMembersRep**](BulkEditMembersRep.md)
375
+
376
+ ### Authorization
377
+
378
+ [ApiKey](../README.md#ApiKey)
379
+
380
+ ### HTTP request headers
381
+
382
+ - **Content-Type**: application/json
383
+ - **Accept**: application/json
384
+
385
+
314
386
  ## post_member_teams
315
387
 
316
388
  > <Member> post_member_teams(id, member_teams_post_input)
@@ -0,0 +1,22 @@
1
+ # LaunchDarklyApi::CovarianceInfoRep
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The ID of the covariance matrix | |
8
+ | **file_name** | **String** | The file name of the uploaded covariance matrix | |
9
+ | **created_at** | **Integer** | | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'launchdarkly_api'
15
+
16
+ instance = LaunchDarklyApi::CovarianceInfoRep.new(
17
+ id: 74a49a2b-4834-4246-917e-5d85231d8c2a,
18
+ file_name: covariance.csv,
19
+ created_at: null
20
+ )
21
+ ```
22
+
data/docs/Environment.md CHANGED
@@ -13,6 +13,7 @@
13
13
  | **color** | **String** | The color used to indicate this environment in the UI | |
14
14
  | **default_ttl** | **Integer** | The default time (in minutes) that the PHP SDK can cache feature flag rules locally | |
15
15
  | **secure_mode** | **Boolean** | Ensures that one end user of the client-side SDK cannot inspect the variations for another end user | |
16
+ | **_access** | [**Access**](Access.md) | | [optional] |
16
17
  | **default_track_events** | **Boolean** | Enables tracking detailed information for new flags by default | |
17
18
  | **require_comments** | **Boolean** | Whether members who modify flags and segments through the LaunchDarkly user interface are required to add a comment | |
18
19
  | **confirm_changes** | **Boolean** | Whether members who modify flags and segments through the LaunchDarkly user interface are required to confirm those changes | |
@@ -36,6 +37,7 @@ instance = LaunchDarklyApi::Environment.new(
36
37
  color: F5A623,
37
38
  default_ttl: 5,
38
39
  secure_mode: true,
40
+ _access: null,
39
41
  default_track_events: false,
40
42
  require_comments: true,
41
43
  confirm_changes: true,
data/docs/Experiment.md CHANGED
@@ -12,6 +12,7 @@
12
12
  | **_creation_date** | **Integer** | | |
13
13
  | **environment_key** | **String** | | |
14
14
  | **archived_date** | **Integer** | | [optional] |
15
+ | **tags** | **Array&lt;String&gt;** | Tags for the experiment | [optional] |
15
16
  | **_links** | [**Hash&lt;String, Link&gt;**](Link.md) | The location and content type of related resources | |
16
17
  | **holdout_id** | **String** | The holdout ID | [optional] |
17
18
  | **current_iteration** | [**IterationRep**](IterationRep.md) | | [optional] |
@@ -32,6 +33,7 @@ instance = LaunchDarklyApi::Experiment.new(
32
33
  _creation_date: null,
33
34
  environment_key: null,
34
35
  archived_date: null,
36
+ tags: [&quot;experiment&quot;,&quot;feature&quot;],
35
37
  _links: {&quot;parent&quot;:{&quot;href&quot;:&quot;/api/v2/projects/my-project/environments/my-environment&quot;,&quot;type&quot;:&quot;application/json&quot;},&quot;self&quot;:{&quot;href&quot;:&quot;/api/v2/projects/my-project/environments/my-environment/experiments/my-experiment&quot;,&quot;type&quot;:&quot;application/json&quot;}},
36
38
  holdout_id: f3b74309-d581-44e1-8a2b-bb2933b4fe40,
37
39
  current_iteration: null,
@@ -10,6 +10,7 @@
10
10
  | **key** | **String** | The experiment key | |
11
11
  | **iteration** | [**IterationInput**](IterationInput.md) | | |
12
12
  | **holdout_id** | **String** | The ID of the holdout | [optional] |
13
+ | **tags** | **Array&lt;String&gt;** | Tags for the experiment | [optional] |
13
14
 
14
15
  ## Example
15
16
 
@@ -22,7 +23,8 @@ instance = LaunchDarklyApi::ExperimentPost.new(
22
23
  maintainer_id: 12ab3c45de678910fgh12345,
23
24
  key: experiment-key-123abc,
24
25
  iteration: null,
25
- holdout_id: f3b74309-d581-44e1-8a2b-bb2933b4fe40
26
+ holdout_id: f3b74309-d581-44e1-8a2b-bb2933b4fe40,
27
+ tags: null
26
28
  )
27
29
  ```
28
30
 
@@ -12,6 +12,7 @@
12
12
  | **treatments** | [**Array&lt;TreatmentInput&gt;**](TreatmentInput.md) | | |
13
13
  | **flags** | [**Hash&lt;String, FlagInput&gt;**](FlagInput.md) | | |
14
14
  | **randomization_unit** | **String** | The unit of randomization for this iteration. Defaults to user. | [optional] |
15
+ | **covariance_id** | **String** | The ID of the covariance CSV | [optional] |
15
16
  | **attributes** | **Array&lt;String&gt;** | The attributes that this iteration&#39;s results can be sliced by | [optional] |
16
17
 
17
18
  ## Example
@@ -28,6 +29,7 @@ instance = LaunchDarklyApi::IterationInput.new(
28
29
  treatments: null,
29
30
  flags: null,
30
31
  randomization_unit: user,
32
+ covariance_id: null,
31
33
  attributes: [&quot;country&quot;,&quot;device&quot;,&quot;os&quot;]
32
34
  )
33
35
  ```
data/docs/IterationRep.md CHANGED
@@ -25,6 +25,7 @@
25
25
  | **secondary_metrics** | [**Array&lt;MetricV2Rep&gt;**](MetricV2Rep.md) | Deprecated, use &lt;code&gt;metrics&lt;/code&gt; instead. Details on the secondary metrics for this experiment. | [optional] |
26
26
  | **metrics** | [**Array&lt;DependentMetricOrMetricGroupRep&gt;**](DependentMetricOrMetricGroupRep.md) | Details on the metrics for this experiment | [optional] |
27
27
  | **layer_snapshot** | [**LayerSnapshotRep**](LayerSnapshotRep.md) | | [optional] |
28
+ | **covariance_info** | [**CovarianceInfoRep**](CovarianceInfoRep.md) | | [optional] |
28
29
 
29
30
  ## Example
30
31
 
@@ -52,7 +53,8 @@ instance = LaunchDarklyApi::IterationRep.new(
52
53
  treatments: null,
53
54
  secondary_metrics: null,
54
55
  metrics: null,
55
- layer_snapshot: null
56
+ layer_snapshot: null,
57
+ covariance_info: null
56
58
  )
57
59
  ```
58
60
 
data/docs/MetricsApi.md CHANGED
@@ -190,7 +190,7 @@ opts = {
190
190
  limit: 789, # Integer | The number of metrics to return in the response. Defaults to 20. Maximum limit is 50.
191
191
  offset: 789, # Integer | Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next `limit` items.
192
192
  sort: 'sort_example', # String | A field to sort the items by. Prefix field by a dash ( - ) to sort in descending order. This endpoint supports sorting by `createdAt` or `name`.
193
- filter: 'filter_example' # String | A comma-separated list of filters. This endpoint accepts filtering by `query`, `tags`, 'eventKind', 'isNumeric', 'unitAggregationType`, `hasConnections`, `maintainerIds`, `maintainerTeamKey` and `view`. To learn more about the filter syntax, read the 'Filtering metrics' section above.
193
+ filter: 'filter_example' # String | A comma-separated list of filters. This endpoint accepts filtering by `query`, `tags`, 'eventKind', 'isNumeric', 'unitAggregationType`, `hasConnections`, `maintainerIds`, `maintainerTeamKey`, `view`, and `dataSourceKeys`. To learn more about the filter syntax, read the 'Filtering metrics' section above.
194
194
  }
195
195
 
196
196
  begin
@@ -229,7 +229,7 @@ end
229
229
  | **limit** | **Integer** | The number of metrics to return in the response. Defaults to 20. Maximum limit is 50. | [optional] |
230
230
  | **offset** | **Integer** | Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next &#x60;limit&#x60; items. | [optional] |
231
231
  | **sort** | **String** | A field to sort the items by. Prefix field by a dash ( - ) to sort in descending order. This endpoint supports sorting by &#x60;createdAt&#x60; or &#x60;name&#x60;. | [optional] |
232
- | **filter** | **String** | A comma-separated list of filters. This endpoint accepts filtering by &#x60;query&#x60;, &#x60;tags&#x60;, &#39;eventKind&#39;, &#39;isNumeric&#39;, &#39;unitAggregationType&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, &#x60;maintainerTeamKey&#x60; and &#x60;view&#x60;. To learn more about the filter syntax, read the &#39;Filtering metrics&#39; section above. | [optional] |
232
+ | **filter** | **String** | A comma-separated list of filters. This endpoint accepts filtering by &#x60;query&#x60;, &#x60;tags&#x60;, &#39;eventKind&#39;, &#39;isNumeric&#39;, &#39;unitAggregationType&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, &#x60;maintainerTeamKey&#x60;, &#x60;view&#x60;, and &#x60;dataSourceKeys&#x60;. To learn more about the filter syntax, read the &#39;Filtering metrics&#39; section above. | [optional] |
233
233
 
234
234
  ### Return type
235
235
 
@@ -239,7 +239,7 @@ end
239
239
 
240
240
  List metric groups
241
241
 
242
- Get a list of all metric groups for the specified project. ### Expanding the metric groups response LaunchDarkly supports one field for expanding the \"Get metric groups\" response. By default, these fields are **not** included in the response. To expand the response, append the `expand` query parameter and add a comma-separated list with the following field: - `experiments` includes all experiments from the specific project that use the metric group For example, `expand=experiments` includes the `experiments` field in the response. ### Filtering metric groups The `filter` parameter supports the following operators: `contains`, `equals`, `anyOf`. #### Supported fields and operators You can only filter certain fields in metrics when using the `filter` parameter. Additionally, you can only filter some fields with certain operators. When you search for metrics, the `filter` parameter supports the following fields and operators: |<div style=\"width:120px\">Field</div> |Description |Supported operators | |---|---|---| | `experimentStatus` | The experiment's status. One of `not_started`, `running`, `stopped`, `started`. | `equals` | | `hasConnections` | Whether the metric group has connections to experiments or guarded rollouts. One of `true`, `false`. | `equals` | | `kind` | The metric group kind. One of `funnel`, `standard`. | `equals` | | `maintainerIds` | The metric maintainer IDs. | `anyOf` | | `maintainerTeamKey` | The metric maintainer team key. | `equals` | | `query` | A \"fuzzy\" search across metric group key and name. Supply a string or list of strings to the operator. | `equals` | ### Sorting metric groups LaunchDarkly supports the following fields for sorting: - `name` sorts by metric group name. - `createdAt` sorts by the creation date of the metric group. - `connectionCount` sorts by the number of connections to experiments the metric group has. By default, the sort is in ascending order. Use `-` to sort in descending order. For example, `?sort=name` sorts the response by metric group name in ascending order, and `?sort=-name` sorts in descending order. #### Sample query `filter=experimentStatus equals 'not_started' and query equals 'metric name'`
242
+ Get a list of all metric groups for the specified project. ### Expanding the metric groups response This endpoint does not support response expansion. Although the API accepts an `expand` query parameter for compatibility reasons, it does not currently modify the response. The parameter is reserved for future use. ### Filtering metric groups The `filter` parameter supports the following operators: `contains`, `equals`, `anyOf`. #### Supported fields and operators You can only filter certain fields in metrics when using the `filter` parameter. Additionally, you can only filter some fields with certain operators. When you search for metrics, the `filter` parameter supports the following fields and operators: |<div style=\"width:120px\">Field</div> |Description |Supported operators | |---|---|---| | `experimentStatus` | The experiment's status. One of `not_started`, `running`, `stopped`, `started`. | `equals` | | `hasConnections` | Whether the metric group has connections to experiments or guarded rollouts. One of `true`, `false`. | `equals` | | `kind` | The metric group kind. One of `funnel`, `standard`. | `equals` | | `maintainerIds` | The metric maintainer IDs. | `anyOf` | | `maintainerTeamKey` | The metric maintainer team key. | `equals` | | `query` | A \"fuzzy\" search across metric group key and name. Supply a string or list of strings to the operator. | `equals` | ### Sorting metric groups LaunchDarkly supports the following fields for sorting: - `name` sorts by metric group name. - `createdAt` sorts by the creation date of the metric group. - `connectionCount` sorts by the number of connections to experiments the metric group has. By default, the sort is in ascending order. Use `-` to sort in descending order. For example, `?sort=name` sorts the response by metric group name in ascending order, and `?sort=-name` sorts in descending order. #### Sample query `filter=experimentStatus equals 'not_started' and query equals 'metric name'`
243
243
 
244
244
  ### Examples
245
245
 
@@ -259,7 +259,7 @@ project_key = 'project_key_example' # String | The project key
259
259
  opts = {
260
260
  filter: 'filter_example', # String | Accepts filter by `experimentStatus`, `query`, `kind`, `hasConnections`, `maintainerIds`, and `maintainerTeamKey`. Example: `filter=experimentStatus equals 'running' and query equals 'test'`.
261
261
  sort: 'sort_example', # String | A comma-separated list of fields to sort by. Fields prefixed by a dash ( - ) sort in descending order. Read the endpoint description for a full list of available sort fields.
262
- expand: 'expand_example', # String | A comma-separated list of properties that can reveal additional information in the response.
262
+ expand: 'expand_example', # String | This parameter is reserved for future use and is not currently supported on this endpoint.
263
263
  limit: 789, # Integer | The number of metric groups to return in the response. Defaults to 20. Maximum limit is 50.
264
264
  offset: 789 # Integer | Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next `limit` items.
265
265
  }
@@ -298,7 +298,7 @@ end
298
298
  | **project_key** | **String** | The project key | |
299
299
  | **filter** | **String** | Accepts filter by &#x60;experimentStatus&#x60;, &#x60;query&#x60;, &#x60;kind&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, and &#x60;maintainerTeamKey&#x60;. Example: &#x60;filter&#x3D;experimentStatus equals &#39;running&#39; and query equals &#39;test&#39;&#x60;. | [optional] |
300
300
  | **sort** | **String** | A comma-separated list of fields to sort by. Fields prefixed by a dash ( - ) sort in descending order. Read the endpoint description for a full list of available sort fields. | [optional] |
301
- | **expand** | **String** | A comma-separated list of properties that can reveal additional information in the response. | [optional] |
301
+ | **expand** | **String** | This parameter is reserved for future use and is not currently supported on this endpoint. | [optional] |
302
302
  | **limit** | **Integer** | The number of metric groups to return in the response. Defaults to 20. Maximum limit is 50. | [optional] |
303
303
  | **offset** | **Integer** | Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next &#x60;limit&#x60; items. | [optional] |
304
304
 
@@ -20,7 +20,7 @@ instance = LaunchDarklyApi::PostReleasePolicyRequest.new(
20
20
  scope: null,
21
21
  release_method: null,
22
22
  guarded_release_config: null,
23
- progressive_release_config: null,
23
+ progressive_release_config: {&quot;rolloutContextKindKey&quot;:&quot;user&quot;},
24
24
  name: Production Release,
25
25
  key: production-release
26
26
  )
@@ -19,7 +19,7 @@ instance = LaunchDarklyApi::PutReleasePolicyRequest.new(
19
19
  scope: null,
20
20
  release_method: null,
21
21
  guarded_release_config: null,
22
- progressive_release_config: null,
22
+ progressive_release_config: {&quot;rolloutContextKindKey&quot;:&quot;user&quot;},
23
23
  name: Production Release
24
24
  )
25
25
  ```
@@ -26,7 +26,7 @@ instance = LaunchDarklyApi::ReleasePolicy.new(
26
26
  rank: 1,
27
27
  release_method: null,
28
28
  guarded_release_config: null,
29
- progressive_release_config: null,
29
+ progressive_release_config: {&quot;rolloutContextKindKey&quot;:&quot;user&quot;},
30
30
  name: Production Release,
31
31
  key: production-release
32
32
  )
@@ -294,6 +294,74 @@ module LaunchDarklyApi
294
294
  return data, status_code, headers
295
295
  end
296
296
 
297
+ # Modify account members
298
+ # > ### Full use of this API resource is an Enterprise feature > > The ability to perform a partial update to multiple members is available to customers on an Enterprise plan. If you are on another plan, you can update members individually. To learn more, [read about our pricing](https://launchdarkly.com/pricing/). To upgrade your plan, [contact Sales](https://launchdarkly.com/contact-sales/). Perform a partial update to multiple members. Updating members uses the semantic patch format. To make a semantic patch request, you must append `domain-model=launchdarkly.semanticpatch` to your `Content-Type` header. To learn more, read [Updates using semantic patch](https://launchdarkly.com/docs/api#updates-using-semantic-patch). ### Instructions Semantic patch requests support the following `kind` instructions for updating members. <details> <summary>Click to expand instructions for <strong>updating members</strong></summary> #### replaceMembersRoles Replaces the roles of the specified members. This also removes all custom roles assigned to the specified members. ##### Parameters - `value`: The new role. Must be a valid [base role](https://launchdarkly.com/docs/home/getting-started/vocabulary#base-role). To learn more, read [Roles](https://launchdarkly.com/docs/home/account/roles). - `memberIDs`: List of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceMembersRoles\", \"value\": \"reader\", \"memberIDs\": [ \"1234a56b7c89d012345e678f\", \"507f1f77bcf86cd799439011\" ] }] } ``` #### replaceAllMembersRoles Replaces the roles of all members. This also removes all custom roles assigned to the specified members. Members that match any of the filters are **excluded** from the update. ##### Parameters - `value`: The new role. Must be a valid [base role](https://launchdarkly.com/docs/home/getting-started/vocabulary#base-role). To learn more, read [Roles](https://launchdarkly.com/docs/home/account/roles). - `filterLastSeen`: (Optional) A JSON object with one of the following formats: - `{\"never\": true}` - Members that have never been active, such as those who have not accepted their invitation to LaunchDarkly, or have not logged in after being provisioned via SCIM. - `{\"noData\": true}` - Members that have not been active since LaunchDarkly began recording last seen timestamps. - `{\"before\": 1608672063611}` - Members that have not been active since the provided value, which should be a timestamp in Unix epoch milliseconds. - `filterQuery`: (Optional) A string that matches against the members' emails and names. It is not case sensitive. - `filterRoles`: (Optional) A `|` separated list of roles and custom roles. For the purposes of this filtering, `Owner` counts as `Admin`. - `filterTeamKey`: (Optional) A string that matches against the key of the team the members belong to. It is not case sensitive. - `ignoredMemberIDs`: (Optional) A list of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceAllMembersRoles\", \"value\": \"reader\", \"filterLastSeen\": { \"never\": true } }] } ``` #### replaceMembersCustomRoles Replaces the custom roles of the specified members. ##### Parameters - `values`: List of new custom roles. Must be a valid custom role key or ID. - `memberIDs`: List of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceMembersCustomRoles\", \"values\": [ \"example-custom-role\" ], \"memberIDs\": [ \"1234a56b7c89d012345e678f\", \"507f1f77bcf86cd799439011\" ] }] } ``` #### replaceAllMembersCustomRoles Replaces the custom roles of all members. Members that match any of the filters are **excluded** from the update. ##### Parameters - `values`: List of new roles. Must be a valid custom role key or ID. - `filterLastSeen`: (Optional) A JSON object with one of the following formats: - `{\"never\": true}` - Members that have never been active, such as those who have not accepted their invitation to LaunchDarkly, or have not logged in after being provisioned via SCIM. - `{\"noData\": true}` - Members that have not been active since LaunchDarkly began recording last seen timestamps. - `{\"before\": 1608672063611}` - Members that have not been active since the provided value, which should be a timestamp in Unix epoch milliseconds. - `filterQuery`: (Optional) A string that matches against the members' emails and names. It is not case sensitive. - `filterRoles`: (Optional) A `|` separated list of roles and custom roles. For the purposes of this filtering, `Owner` counts as `Admin`. - `filterTeamKey`: (Optional) A string that matches against the key of the team the members belong to. It is not case sensitive. - `ignoredMemberIDs`: (Optional) A list of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceAllMembersCustomRoles\", \"values\": [ \"example-custom-role\" ], \"filterLastSeen\": { \"never\": true } }] } ``` #### replaceMembersRoleAttributes Replaces the role attributes of the specified members. ##### Parameters - `value`: Map of role attribute keys to lists of values. - `memberIDs`: List of member IDs. Here's an example: ```json { \"instructions\": [{ \"kind\": \"replaceMembersRoleAttributes\", \"value\": { \"myRoleProjectKey\": [\"mobile\", \"web\"], \"myRoleEnvironmentKey\": [\"production\"] }, \"memberIDs\": [ \"1234a56b7c89d012345e678f\", \"507f1f77bcf86cd799439011\" ] }] } ``` </details>
299
+ # @param members_patch_input [MembersPatchInput]
300
+ # @param [Hash] opts the optional parameters
301
+ # @return [BulkEditMembersRep]
302
+ def patch_members(members_patch_input, opts = {})
303
+ data, _status_code, _headers = patch_members_with_http_info(members_patch_input, opts)
304
+ data
305
+ end
306
+
307
+ # Modify account members
308
+ # &gt; ### Full use of this API resource is an Enterprise feature &gt; &gt; The ability to perform a partial update to multiple members is available to customers on an Enterprise plan. If you are on another plan, you can update members individually. To learn more, [read about our pricing](https://launchdarkly.com/pricing/). To upgrade your plan, [contact Sales](https://launchdarkly.com/contact-sales/). Perform a partial update to multiple members. Updating members uses the semantic patch format. To make a semantic patch request, you must append &#x60;domain-model&#x3D;launchdarkly.semanticpatch&#x60; to your &#x60;Content-Type&#x60; header. To learn more, read [Updates using semantic patch](https://launchdarkly.com/docs/api#updates-using-semantic-patch). ### Instructions Semantic patch requests support the following &#x60;kind&#x60; instructions for updating members. &lt;details&gt; &lt;summary&gt;Click to expand instructions for &lt;strong&gt;updating members&lt;/strong&gt;&lt;/summary&gt; #### replaceMembersRoles Replaces the roles of the specified members. This also removes all custom roles assigned to the specified members. ##### Parameters - &#x60;value&#x60;: The new role. Must be a valid [base role](https://launchdarkly.com/docs/home/getting-started/vocabulary#base-role). To learn more, read [Roles](https://launchdarkly.com/docs/home/account/roles). - &#x60;memberIDs&#x60;: List of member IDs. Here&#39;s an example: &#x60;&#x60;&#x60;json { \&quot;instructions\&quot;: [{ \&quot;kind\&quot;: \&quot;replaceMembersRoles\&quot;, \&quot;value\&quot;: \&quot;reader\&quot;, \&quot;memberIDs\&quot;: [ \&quot;1234a56b7c89d012345e678f\&quot;, \&quot;507f1f77bcf86cd799439011\&quot; ] }] } &#x60;&#x60;&#x60; #### replaceAllMembersRoles Replaces the roles of all members. This also removes all custom roles assigned to the specified members. Members that match any of the filters are **excluded** from the update. ##### Parameters - &#x60;value&#x60;: The new role. Must be a valid [base role](https://launchdarkly.com/docs/home/getting-started/vocabulary#base-role). To learn more, read [Roles](https://launchdarkly.com/docs/home/account/roles). - &#x60;filterLastSeen&#x60;: (Optional) A JSON object with one of the following formats: - &#x60;{\&quot;never\&quot;: true}&#x60; - Members that have never been active, such as those who have not accepted their invitation to LaunchDarkly, or have not logged in after being provisioned via SCIM. - &#x60;{\&quot;noData\&quot;: true}&#x60; - Members that have not been active since LaunchDarkly began recording last seen timestamps. - &#x60;{\&quot;before\&quot;: 1608672063611}&#x60; - Members that have not been active since the provided value, which should be a timestamp in Unix epoch milliseconds. - &#x60;filterQuery&#x60;: (Optional) A string that matches against the members&#39; emails and names. It is not case sensitive. - &#x60;filterRoles&#x60;: (Optional) A &#x60;|&#x60; separated list of roles and custom roles. For the purposes of this filtering, &#x60;Owner&#x60; counts as &#x60;Admin&#x60;. - &#x60;filterTeamKey&#x60;: (Optional) A string that matches against the key of the team the members belong to. It is not case sensitive. - &#x60;ignoredMemberIDs&#x60;: (Optional) A list of member IDs. Here&#39;s an example: &#x60;&#x60;&#x60;json { \&quot;instructions\&quot;: [{ \&quot;kind\&quot;: \&quot;replaceAllMembersRoles\&quot;, \&quot;value\&quot;: \&quot;reader\&quot;, \&quot;filterLastSeen\&quot;: { \&quot;never\&quot;: true } }] } &#x60;&#x60;&#x60; #### replaceMembersCustomRoles Replaces the custom roles of the specified members. ##### Parameters - &#x60;values&#x60;: List of new custom roles. Must be a valid custom role key or ID. - &#x60;memberIDs&#x60;: List of member IDs. Here&#39;s an example: &#x60;&#x60;&#x60;json { \&quot;instructions\&quot;: [{ \&quot;kind\&quot;: \&quot;replaceMembersCustomRoles\&quot;, \&quot;values\&quot;: [ \&quot;example-custom-role\&quot; ], \&quot;memberIDs\&quot;: [ \&quot;1234a56b7c89d012345e678f\&quot;, \&quot;507f1f77bcf86cd799439011\&quot; ] }] } &#x60;&#x60;&#x60; #### replaceAllMembersCustomRoles Replaces the custom roles of all members. Members that match any of the filters are **excluded** from the update. ##### Parameters - &#x60;values&#x60;: List of new roles. Must be a valid custom role key or ID. - &#x60;filterLastSeen&#x60;: (Optional) A JSON object with one of the following formats: - &#x60;{\&quot;never\&quot;: true}&#x60; - Members that have never been active, such as those who have not accepted their invitation to LaunchDarkly, or have not logged in after being provisioned via SCIM. - &#x60;{\&quot;noData\&quot;: true}&#x60; - Members that have not been active since LaunchDarkly began recording last seen timestamps. - &#x60;{\&quot;before\&quot;: 1608672063611}&#x60; - Members that have not been active since the provided value, which should be a timestamp in Unix epoch milliseconds. - &#x60;filterQuery&#x60;: (Optional) A string that matches against the members&#39; emails and names. It is not case sensitive. - &#x60;filterRoles&#x60;: (Optional) A &#x60;|&#x60; separated list of roles and custom roles. For the purposes of this filtering, &#x60;Owner&#x60; counts as &#x60;Admin&#x60;. - &#x60;filterTeamKey&#x60;: (Optional) A string that matches against the key of the team the members belong to. It is not case sensitive. - &#x60;ignoredMemberIDs&#x60;: (Optional) A list of member IDs. Here&#39;s an example: &#x60;&#x60;&#x60;json { \&quot;instructions\&quot;: [{ \&quot;kind\&quot;: \&quot;replaceAllMembersCustomRoles\&quot;, \&quot;values\&quot;: [ \&quot;example-custom-role\&quot; ], \&quot;filterLastSeen\&quot;: { \&quot;never\&quot;: true } }] } &#x60;&#x60;&#x60; #### replaceMembersRoleAttributes Replaces the role attributes of the specified members. ##### Parameters - &#x60;value&#x60;: Map of role attribute keys to lists of values. - &#x60;memberIDs&#x60;: List of member IDs. Here&#39;s an example: &#x60;&#x60;&#x60;json { \&quot;instructions\&quot;: [{ \&quot;kind\&quot;: \&quot;replaceMembersRoleAttributes\&quot;, \&quot;value\&quot;: { \&quot;myRoleProjectKey\&quot;: [\&quot;mobile\&quot;, \&quot;web\&quot;], \&quot;myRoleEnvironmentKey\&quot;: [\&quot;production\&quot;] }, \&quot;memberIDs\&quot;: [ \&quot;1234a56b7c89d012345e678f\&quot;, \&quot;507f1f77bcf86cd799439011\&quot; ] }] } &#x60;&#x60;&#x60; &lt;/details&gt;
309
+ # @param members_patch_input [MembersPatchInput]
310
+ # @param [Hash] opts the optional parameters
311
+ # @return [Array<(BulkEditMembersRep, Integer, Hash)>] BulkEditMembersRep data, response status code and response headers
312
+ def patch_members_with_http_info(members_patch_input, opts = {})
313
+ if @api_client.config.debugging
314
+ @api_client.config.logger.debug 'Calling API: AccountMembersApi.patch_members ...'
315
+ end
316
+ # verify the required parameter 'members_patch_input' is set
317
+ if @api_client.config.client_side_validation && members_patch_input.nil?
318
+ fail ArgumentError, "Missing the required parameter 'members_patch_input' when calling AccountMembersApi.patch_members"
319
+ end
320
+ # resource path
321
+ local_var_path = '/api/v2/members'
322
+
323
+ # query parameters
324
+ query_params = opts[:query_params] || {}
325
+
326
+ # header parameters
327
+ header_params = opts[:header_params] || {}
328
+ # HTTP header 'Accept' (if needed)
329
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
330
+ # HTTP header 'Content-Type'
331
+ content_type = @api_client.select_header_content_type(['application/json'])
332
+ if !content_type.nil?
333
+ header_params['Content-Type'] = content_type
334
+ end
335
+
336
+ # form parameters
337
+ form_params = opts[:form_params] || {}
338
+
339
+ # http body (model)
340
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(members_patch_input)
341
+
342
+ # return_type
343
+ return_type = opts[:debug_return_type] || 'BulkEditMembersRep'
344
+
345
+ # auth_names
346
+ auth_names = opts[:debug_auth_names] || ['ApiKey']
347
+
348
+ new_options = opts.merge(
349
+ :operation => :"AccountMembersApi.patch_members",
350
+ :header_params => header_params,
351
+ :query_params => query_params,
352
+ :form_params => form_params,
353
+ :body => post_body,
354
+ :auth_names => auth_names,
355
+ :return_type => return_type
356
+ )
357
+
358
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
359
+ if @api_client.config.debugging
360
+ @api_client.config.logger.debug "API called: AccountMembersApi#patch_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
361
+ end
362
+ return data, status_code, headers
363
+ end
364
+
297
365
  # Add a member to teams
298
366
  # Add one member to one or more teams.
299
367
  # @param id [String] The member ID
@@ -171,7 +171,7 @@ module LaunchDarklyApi
171
171
  # @option opts [Integer] :limit The number of metrics to return in the response. Defaults to 20. Maximum limit is 50.
172
172
  # @option opts [Integer] :offset Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next &#x60;limit&#x60; items.
173
173
  # @option opts [String] :sort A field to sort the items by. Prefix field by a dash ( - ) to sort in descending order. This endpoint supports sorting by &#x60;createdAt&#x60; or &#x60;name&#x60;.
174
- # @option opts [String] :filter A comma-separated list of filters. This endpoint accepts filtering by &#x60;query&#x60;, &#x60;tags&#x60;, &#39;eventKind&#39;, &#39;isNumeric&#39;, &#39;unitAggregationType&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, &#x60;maintainerTeamKey&#x60; and &#x60;view&#x60;. To learn more about the filter syntax, read the &#39;Filtering metrics&#39; section above.
174
+ # @option opts [String] :filter A comma-separated list of filters. This endpoint accepts filtering by &#x60;query&#x60;, &#x60;tags&#x60;, &#39;eventKind&#39;, &#39;isNumeric&#39;, &#39;unitAggregationType&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, &#x60;maintainerTeamKey&#x60;, &#x60;view&#x60;, and &#x60;dataSourceKeys&#x60;. To learn more about the filter syntax, read the &#39;Filtering metrics&#39; section above.
175
175
  # @return [MetricCollectionRep]
176
176
  def get_metrics(project_key, opts = {})
177
177
  data, _status_code, _headers = get_metrics_with_http_info(project_key, opts)
@@ -186,7 +186,7 @@ module LaunchDarklyApi
186
186
  # @option opts [Integer] :limit The number of metrics to return in the response. Defaults to 20. Maximum limit is 50.
187
187
  # @option opts [Integer] :offset Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next &#x60;limit&#x60; items.
188
188
  # @option opts [String] :sort A field to sort the items by. Prefix field by a dash ( - ) to sort in descending order. This endpoint supports sorting by &#x60;createdAt&#x60; or &#x60;name&#x60;.
189
- # @option opts [String] :filter A comma-separated list of filters. This endpoint accepts filtering by &#x60;query&#x60;, &#x60;tags&#x60;, &#39;eventKind&#39;, &#39;isNumeric&#39;, &#39;unitAggregationType&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, &#x60;maintainerTeamKey&#x60; and &#x60;view&#x60;. To learn more about the filter syntax, read the &#39;Filtering metrics&#39; section above.
189
+ # @option opts [String] :filter A comma-separated list of filters. This endpoint accepts filtering by &#x60;query&#x60;, &#x60;tags&#x60;, &#39;eventKind&#39;, &#39;isNumeric&#39;, &#39;unitAggregationType&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, &#x60;maintainerTeamKey&#x60;, &#x60;view&#x60;, and &#x60;dataSourceKeys&#x60;. To learn more about the filter syntax, read the &#39;Filtering metrics&#39; section above.
190
190
  # @return [Array<(MetricCollectionRep, Integer, Hash)>] MetricCollectionRep data, response status code and response headers
191
191
  def get_metrics_with_http_info(project_key, opts = {})
192
192
  if @api_client.config.debugging
@@ -235,12 +235,12 @@ module LaunchDarklyApi
235
235
  end
236
236
 
237
237
  # List metric groups
238
- # Get a list of all metric groups for the specified project. ### Expanding the metric groups response LaunchDarkly supports one field for expanding the \"Get metric groups\" response. By default, these fields are **not** included in the response. To expand the response, append the `expand` query parameter and add a comma-separated list with the following field: - `experiments` includes all experiments from the specific project that use the metric group For example, `expand=experiments` includes the `experiments` field in the response. ### Filtering metric groups The `filter` parameter supports the following operators: `contains`, `equals`, `anyOf`. #### Supported fields and operators You can only filter certain fields in metrics when using the `filter` parameter. Additionally, you can only filter some fields with certain operators. When you search for metrics, the `filter` parameter supports the following fields and operators: |<div style=\"width:120px\">Field</div> |Description |Supported operators | |---|---|---| | `experimentStatus` | The experiment's status. One of `not_started`, `running`, `stopped`, `started`. | `equals` | | `hasConnections` | Whether the metric group has connections to experiments or guarded rollouts. One of `true`, `false`. | `equals` | | `kind` | The metric group kind. One of `funnel`, `standard`. | `equals` | | `maintainerIds` | The metric maintainer IDs. | `anyOf` | | `maintainerTeamKey` | The metric maintainer team key. | `equals` | | `query` | A \"fuzzy\" search across metric group key and name. Supply a string or list of strings to the operator. | `equals` | ### Sorting metric groups LaunchDarkly supports the following fields for sorting: - `name` sorts by metric group name. - `createdAt` sorts by the creation date of the metric group. - `connectionCount` sorts by the number of connections to experiments the metric group has. By default, the sort is in ascending order. Use `-` to sort in descending order. For example, `?sort=name` sorts the response by metric group name in ascending order, and `?sort=-name` sorts in descending order. #### Sample query `filter=experimentStatus equals 'not_started' and query equals 'metric name'`
238
+ # Get a list of all metric groups for the specified project. ### Expanding the metric groups response This endpoint does not support response expansion. Although the API accepts an `expand` query parameter for compatibility reasons, it does not currently modify the response. The parameter is reserved for future use. ### Filtering metric groups The `filter` parameter supports the following operators: `contains`, `equals`, `anyOf`. #### Supported fields and operators You can only filter certain fields in metrics when using the `filter` parameter. Additionally, you can only filter some fields with certain operators. When you search for metrics, the `filter` parameter supports the following fields and operators: |<div style=\"width:120px\">Field</div> |Description |Supported operators | |---|---|---| | `experimentStatus` | The experiment's status. One of `not_started`, `running`, `stopped`, `started`. | `equals` | | `hasConnections` | Whether the metric group has connections to experiments or guarded rollouts. One of `true`, `false`. | `equals` | | `kind` | The metric group kind. One of `funnel`, `standard`. | `equals` | | `maintainerIds` | The metric maintainer IDs. | `anyOf` | | `maintainerTeamKey` | The metric maintainer team key. | `equals` | | `query` | A \"fuzzy\" search across metric group key and name. Supply a string or list of strings to the operator. | `equals` | ### Sorting metric groups LaunchDarkly supports the following fields for sorting: - `name` sorts by metric group name. - `createdAt` sorts by the creation date of the metric group. - `connectionCount` sorts by the number of connections to experiments the metric group has. By default, the sort is in ascending order. Use `-` to sort in descending order. For example, `?sort=name` sorts the response by metric group name in ascending order, and `?sort=-name` sorts in descending order. #### Sample query `filter=experimentStatus equals 'not_started' and query equals 'metric name'`
239
239
  # @param project_key [String] The project key
240
240
  # @param [Hash] opts the optional parameters
241
241
  # @option opts [String] :filter Accepts filter by &#x60;experimentStatus&#x60;, &#x60;query&#x60;, &#x60;kind&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, and &#x60;maintainerTeamKey&#x60;. Example: &#x60;filter&#x3D;experimentStatus equals &#39;running&#39; and query equals &#39;test&#39;&#x60;.
242
242
  # @option opts [String] :sort A comma-separated list of fields to sort by. Fields prefixed by a dash ( - ) sort in descending order. Read the endpoint description for a full list of available sort fields.
243
- # @option opts [String] :expand A comma-separated list of properties that can reveal additional information in the response.
243
+ # @option opts [String] :expand This parameter is reserved for future use and is not currently supported on this endpoint.
244
244
  # @option opts [Integer] :limit The number of metric groups to return in the response. Defaults to 20. Maximum limit is 50.
245
245
  # @option opts [Integer] :offset Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next &#x60;limit&#x60; items.
246
246
  # @return [MetricGroupCollectionRep]
@@ -250,12 +250,12 @@ module LaunchDarklyApi
250
250
  end
251
251
 
252
252
  # List metric groups
253
- # Get a list of all metric groups for the specified project. ### Expanding the metric groups response LaunchDarkly supports one field for expanding the \&quot;Get metric groups\&quot; response. By default, these fields are **not** included in the response. To expand the response, append the &#x60;expand&#x60; query parameter and add a comma-separated list with the following field: - &#x60;experiments&#x60; includes all experiments from the specific project that use the metric group For example, &#x60;expand&#x3D;experiments&#x60; includes the &#x60;experiments&#x60; field in the response. ### Filtering metric groups The &#x60;filter&#x60; parameter supports the following operators: &#x60;contains&#x60;, &#x60;equals&#x60;, &#x60;anyOf&#x60;. #### Supported fields and operators You can only filter certain fields in metrics when using the &#x60;filter&#x60; parameter. Additionally, you can only filter some fields with certain operators. When you search for metrics, the &#x60;filter&#x60; parameter supports the following fields and operators: |&lt;div style&#x3D;\&quot;width:120px\&quot;&gt;Field&lt;/div&gt; |Description |Supported operators | |---|---|---| | &#x60;experimentStatus&#x60; | The experiment&#39;s status. One of &#x60;not_started&#x60;, &#x60;running&#x60;, &#x60;stopped&#x60;, &#x60;started&#x60;. | &#x60;equals&#x60; | | &#x60;hasConnections&#x60; | Whether the metric group has connections to experiments or guarded rollouts. One of &#x60;true&#x60;, &#x60;false&#x60;. | &#x60;equals&#x60; | | &#x60;kind&#x60; | The metric group kind. One of &#x60;funnel&#x60;, &#x60;standard&#x60;. | &#x60;equals&#x60; | | &#x60;maintainerIds&#x60; | The metric maintainer IDs. | &#x60;anyOf&#x60; | | &#x60;maintainerTeamKey&#x60; | The metric maintainer team key. | &#x60;equals&#x60; | | &#x60;query&#x60; | A \&quot;fuzzy\&quot; search across metric group key and name. Supply a string or list of strings to the operator. | &#x60;equals&#x60; | ### Sorting metric groups LaunchDarkly supports the following fields for sorting: - &#x60;name&#x60; sorts by metric group name. - &#x60;createdAt&#x60; sorts by the creation date of the metric group. - &#x60;connectionCount&#x60; sorts by the number of connections to experiments the metric group has. By default, the sort is in ascending order. Use &#x60;-&#x60; to sort in descending order. For example, &#x60;?sort&#x3D;name&#x60; sorts the response by metric group name in ascending order, and &#x60;?sort&#x3D;-name&#x60; sorts in descending order. #### Sample query &#x60;filter&#x3D;experimentStatus equals &#39;not_started&#39; and query equals &#39;metric name&#39;&#x60;
253
+ # Get a list of all metric groups for the specified project. ### Expanding the metric groups response This endpoint does not support response expansion. Although the API accepts an &#x60;expand&#x60; query parameter for compatibility reasons, it does not currently modify the response. The parameter is reserved for future use. ### Filtering metric groups The &#x60;filter&#x60; parameter supports the following operators: &#x60;contains&#x60;, &#x60;equals&#x60;, &#x60;anyOf&#x60;. #### Supported fields and operators You can only filter certain fields in metrics when using the &#x60;filter&#x60; parameter. Additionally, you can only filter some fields with certain operators. When you search for metrics, the &#x60;filter&#x60; parameter supports the following fields and operators: |&lt;div style&#x3D;\&quot;width:120px\&quot;&gt;Field&lt;/div&gt; |Description |Supported operators | |---|---|---| | &#x60;experimentStatus&#x60; | The experiment&#39;s status. One of &#x60;not_started&#x60;, &#x60;running&#x60;, &#x60;stopped&#x60;, &#x60;started&#x60;. | &#x60;equals&#x60; | | &#x60;hasConnections&#x60; | Whether the metric group has connections to experiments or guarded rollouts. One of &#x60;true&#x60;, &#x60;false&#x60;. | &#x60;equals&#x60; | | &#x60;kind&#x60; | The metric group kind. One of &#x60;funnel&#x60;, &#x60;standard&#x60;. | &#x60;equals&#x60; | | &#x60;maintainerIds&#x60; | The metric maintainer IDs. | &#x60;anyOf&#x60; | | &#x60;maintainerTeamKey&#x60; | The metric maintainer team key. | &#x60;equals&#x60; | | &#x60;query&#x60; | A \&quot;fuzzy\&quot; search across metric group key and name. Supply a string or list of strings to the operator. | &#x60;equals&#x60; | ### Sorting metric groups LaunchDarkly supports the following fields for sorting: - &#x60;name&#x60; sorts by metric group name. - &#x60;createdAt&#x60; sorts by the creation date of the metric group. - &#x60;connectionCount&#x60; sorts by the number of connections to experiments the metric group has. By default, the sort is in ascending order. Use &#x60;-&#x60; to sort in descending order. For example, &#x60;?sort&#x3D;name&#x60; sorts the response by metric group name in ascending order, and &#x60;?sort&#x3D;-name&#x60; sorts in descending order. #### Sample query &#x60;filter&#x3D;experimentStatus equals &#39;not_started&#39; and query equals &#39;metric name&#39;&#x60;
254
254
  # @param project_key [String] The project key
255
255
  # @param [Hash] opts the optional parameters
256
256
  # @option opts [String] :filter Accepts filter by &#x60;experimentStatus&#x60;, &#x60;query&#x60;, &#x60;kind&#x60;, &#x60;hasConnections&#x60;, &#x60;maintainerIds&#x60;, and &#x60;maintainerTeamKey&#x60;. Example: &#x60;filter&#x3D;experimentStatus equals &#39;running&#39; and query equals &#39;test&#39;&#x60;.
257
257
  # @option opts [String] :sort A comma-separated list of fields to sort by. Fields prefixed by a dash ( - ) sort in descending order. Read the endpoint description for a full list of available sort fields.
258
- # @option opts [String] :expand A comma-separated list of properties that can reveal additional information in the response.
258
+ # @option opts [String] :expand This parameter is reserved for future use and is not currently supported on this endpoint.
259
259
  # @option opts [Integer] :limit The number of metric groups to return in the response. Defaults to 20. Maximum limit is 50.
260
260
  # @option opts [Integer] :offset Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and returns the next &#x60;limit&#x60; items.
261
261
  # @return [Array<(MetricGroupCollectionRep, Integer, Hash)>] MetricGroupCollectionRep data, response status code and response headers
@@ -130,8 +130,6 @@ module LaunchDarklyApi
130
130
  if (value = attributes[:'messages']).is_a?(Array)
131
131
  self.messages = value
132
132
  end
133
- else
134
- self.messages = nil
135
133
  end
136
134
 
137
135
  if attributes.key?(:'model')
@@ -174,10 +172,6 @@ module LaunchDarklyApi
174
172
  invalid_properties.push('invalid value for "key", key cannot be nil.')
175
173
  end
176
174
 
177
- if @messages.nil?
178
- invalid_properties.push('invalid value for "messages", messages cannot be nil.')
179
- end
180
-
181
175
  if @name.nil?
182
176
  invalid_properties.push('invalid value for "name", name cannot be nil.')
183
177
  end
@@ -190,7 +184,6 @@ module LaunchDarklyApi
190
184
  def valid?
191
185
  warn '[DEPRECATED] the `valid?` method is obsolete'
192
186
  return false if @key.nil?
193
- return false if @messages.nil?
194
187
  return false if @name.nil?
195
188
  true
196
189
  end
@@ -205,16 +198,6 @@ module LaunchDarklyApi
205
198
  @key = key
206
199
  end
207
200
 
208
- # Custom attribute writer method with validation
209
- # @param [Object] messages Value to be assigned
210
- def messages=(messages)
211
- if messages.nil?
212
- fail ArgumentError, 'messages cannot be nil'
213
- end
214
-
215
- @messages = messages
216
- end
217
-
218
201
  # Custom attribute writer method with validation
219
202
  # @param [Object] name Value to be assigned
220
203
  def name=(name)