# Variation Groups

Manage variation groups

## Get variation groups of the campaign

> Return the list of the variation groups of the campaign

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"tags":[{"name":"Variation Groups","description":"Manage variation groups"}],"servers":[{"url":"https://api.flagship.io/v1"}],"security":[{"token":[]}],"components":{"securitySchemes":{"token":{"type":"apiKey","description":"Prefix the token with 'Bearer ' to indicate it is a bearer token","name":"Authorization","in":"header"}},"parameters":{"account_id":{"name":"account_id","in":"path","description":"The ID of the account","required":true,"schema":{"type":"string"}},"account_environment_id":{"name":"account_environment_id","in":"path","description":"The ID of the environment","required":true,"schema":{"type":"string"}},"campaign_id":{"name":"campaign_id","in":"path","description":"The ID of the campaign","required":true,"schema":{"type":"string"}},"_page":{"name":"_page","in":"query","description":"Index of the page","schema":{"type":"integer"}},"_max_per_page":{"name":"_max_per_page","in":"query","description":"Number of items per page","schema":{"type":"integer"}}},"schemas":{"ItemCollection":{"properties":{"current_item_count":{"description":"Returns the number of items in the current page","type":"integer","format":"int"},"current_page":{"description":"Returns the number of the current page","type":"integer","format":"int","default":0},"total_count":{"description":"Returns the number of total items","type":"integer","format":"int"},"items_per_page":{"title":"Items per page","description":"Returns the number of items per page","type":"integer","format":"int","default":10},"last_page":{"title":"Last page","description":"Returns the index of the page","type":"integer","format":"int"}},"type":"object"},"VariationGroup":{"required":["variations"],"properties":{"id":{"description":"ID of the variation group","type":"string","readOnly":true},"name":{"description":"Name of the variation group","type":"string"},"variations":{"description":"List of variations","type":"array","items":{"$ref":"#/components/schemas/Variation"}},"targeting":{"$ref":"#/components/schemas/Targeting"},"allocation_config":{"$ref":"#/components/schemas/AllocationConfig"}},"type":"object"},"Variation":{"required":["name","allocation"],"properties":{"id":{"description":"ID of the variation","type":"string","readOnly":true},"name":{"description":"Name of the variation","type":"string"},"reference":{"description":"Wether the variation is the reference or not","type":"boolean"},"allocation":{"description":"Allocation of the variation (0-100)","type":"integer"},"modifications":{"$ref":"#/components/schemas/Modifications"}},"type":"object"},"Modifications":{"required":["type","value"],"properties":{"type":{"description":"Type of the modification","type":"string"},"value":{"description":"Value of the variation","type":"object"}},"type":"object"},"Targeting":{"required":["targetingGroups"],"properties":{"targeting_groups":{"description":"List of targeting groups","type":"array","items":{"$ref":"#/components/schemas/TargetingGroup"}}},"type":"object"},"TargetingGroup":{"required":["targetings"],"properties":{"targetings":{"description":"List of targeting items","type":"array","items":{"$ref":"#/components/schemas/TargetingItem"}}},"type":"object"},"TargetingItem":{"required":["key","operator","value"],"properties":{"key":{"description":"Key of the targeting","type":"string"},"operator":{"description":"Operator of the targeting","type":"string","enum":["EQUALS","NOT_EQUALS","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","GREATER_THAN","EXISTS","NOT_EXISTS","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value of the targeting, can be a string or an array of strings","oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"type":"object"},"AllocationConfig":{"required":["start_date","start_allocation","timezone"],"properties":{"start_date":{"description":"Start date with format YYYY-mm-dd H:i:s. Example : 2022-02-01 10:00:00.","type":"string","format":"date-time"},"timezone":{"description":"Timezone of the allocation config (ex: Europe/Paris)","type":"string"},"start_allocation":{"description":"First allocation to set at the start_date time.","type":"number","format":"float"},"periodic_steps":{"$ref":"#/components/schemas/AllocationStep"},"custom_steps":{"description":"Define custom steps for the allocation, each step allocation and date must be relative to the allocation start date.","type":"array","items":{"$ref":"#/components/schemas/AllocationStep"}},"rollback_condition":{"$ref":"#/components/schemas/AllocationRollbackCondition"}},"type":"object"},"AllocationStep":{"required":["allocation","step","stepType"],"properties":{"allocation_step":{"description":"Allocation percentage to add at each new allocation update. For a custom_steps type, set this allocation to the allocation to reach.","type":"number","format":"float"},"step":{"description":"Number of days/hours (step_type property to be defined) to add at each new allocation update. For a custom_steps type, set this value to the step value to reach.","type":"integer"},"step_type":{"description":"Chose the step type (day, hour).","type":"string","enum":["day","hour"]}},"type":"object"},"AllocationRollbackCondition":{"required":["goal","operator","value","min_visitors"],"properties":{"goal":{"$ref":"#/components/schemas/GoalWithType"},"operator":{"description":"Operator to apply on the goal condition","type":"string","enum":["GREATER_THAN","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value to apply on the goal condition","type":"integer"},"min_visitors":{"description":"Minimum of visitors to reach to trigger the rollback","type":"integer"}},"type":"object"},"GoalWithType":{"allOf":[{"$ref":"#/components/schemas/GoalType"},{"$ref":"#/components/schemas/Goal"}]},"GoalType":{"properties":{"type":{"description":"Type of the goal","type":"string","enum":["transaction","event","pageview","screenview"]}},"type":"object"},"Goal":{"required":["label"],"properties":{"id":{"description":"ID of the goal","type":"string","readOnly":true},"label":{"description":"Label of the goal","type":"string"},"operator":{"description":"Operator of the goal (for pageview, screenview types)","type":"string","enum":["contains","ignoringParameters","exact","regexp"]},"value":{"description":"Value of the goal (for pageview, screenview types)","type":"string"}},"type":"object"}}},"paths":{"/accounts/{account_id}/account_environments/{account_environment_id}/campaigns/{campaign_id}/variation_groups":{"get":{"tags":["Variation Groups"],"summary":"Get variation groups of the campaign","description":"Return the list of the variation groups of the campaign","operationId":"e9c0ded78aab979d89652b07320a017c","parameters":[{"$ref":"#/components/parameters/account_id"},{"$ref":"#/components/parameters/account_environment_id"},{"$ref":"#/components/parameters/campaign_id"},{"$ref":"#/components/parameters/_page"},{"$ref":"#/components/parameters/_max_per_page"}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ItemCollection"},{"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/VariationGroup"}}},"type":"object"}]}}}},"404":{"description":"Not Found"}}}}}}
```

## Create a variation group

> Create a variation group

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"tags":[{"name":"Variation Groups","description":"Manage variation groups"}],"servers":[{"url":"https://api.flagship.io/v1"}],"security":[{"token":[]}],"components":{"securitySchemes":{"token":{"type":"apiKey","description":"Prefix the token with 'Bearer ' to indicate it is a bearer token","name":"Authorization","in":"header"}},"parameters":{"account_id":{"name":"account_id","in":"path","description":"The ID of the account","required":true,"schema":{"type":"string"}},"account_environment_id":{"name":"account_environment_id","in":"path","description":"The ID of the environment","required":true,"schema":{"type":"string"}},"campaign_id":{"name":"campaign_id","in":"path","description":"The ID of the campaign","required":true,"schema":{"type":"string"}}},"schemas":{"VariationGroup":{"required":["variations"],"properties":{"id":{"description":"ID of the variation group","type":"string","readOnly":true},"name":{"description":"Name of the variation group","type":"string"},"variations":{"description":"List of variations","type":"array","items":{"$ref":"#/components/schemas/Variation"}},"targeting":{"$ref":"#/components/schemas/Targeting"},"allocation_config":{"$ref":"#/components/schemas/AllocationConfig"}},"type":"object"},"Variation":{"required":["name","allocation"],"properties":{"id":{"description":"ID of the variation","type":"string","readOnly":true},"name":{"description":"Name of the variation","type":"string"},"reference":{"description":"Wether the variation is the reference or not","type":"boolean"},"allocation":{"description":"Allocation of the variation (0-100)","type":"integer"},"modifications":{"$ref":"#/components/schemas/Modifications"}},"type":"object"},"Modifications":{"required":["type","value"],"properties":{"type":{"description":"Type of the modification","type":"string"},"value":{"description":"Value of the variation","type":"object"}},"type":"object"},"Targeting":{"required":["targetingGroups"],"properties":{"targeting_groups":{"description":"List of targeting groups","type":"array","items":{"$ref":"#/components/schemas/TargetingGroup"}}},"type":"object"},"TargetingGroup":{"required":["targetings"],"properties":{"targetings":{"description":"List of targeting items","type":"array","items":{"$ref":"#/components/schemas/TargetingItem"}}},"type":"object"},"TargetingItem":{"required":["key","operator","value"],"properties":{"key":{"description":"Key of the targeting","type":"string"},"operator":{"description":"Operator of the targeting","type":"string","enum":["EQUALS","NOT_EQUALS","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","GREATER_THAN","EXISTS","NOT_EXISTS","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value of the targeting, can be a string or an array of strings","oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"type":"object"},"AllocationConfig":{"required":["start_date","start_allocation","timezone"],"properties":{"start_date":{"description":"Start date with format YYYY-mm-dd H:i:s. Example : 2022-02-01 10:00:00.","type":"string","format":"date-time"},"timezone":{"description":"Timezone of the allocation config (ex: Europe/Paris)","type":"string"},"start_allocation":{"description":"First allocation to set at the start_date time.","type":"number","format":"float"},"periodic_steps":{"$ref":"#/components/schemas/AllocationStep"},"custom_steps":{"description":"Define custom steps for the allocation, each step allocation and date must be relative to the allocation start date.","type":"array","items":{"$ref":"#/components/schemas/AllocationStep"}},"rollback_condition":{"$ref":"#/components/schemas/AllocationRollbackCondition"}},"type":"object"},"AllocationStep":{"required":["allocation","step","stepType"],"properties":{"allocation_step":{"description":"Allocation percentage to add at each new allocation update. For a custom_steps type, set this allocation to the allocation to reach.","type":"number","format":"float"},"step":{"description":"Number of days/hours (step_type property to be defined) to add at each new allocation update. For a custom_steps type, set this value to the step value to reach.","type":"integer"},"step_type":{"description":"Chose the step type (day, hour).","type":"string","enum":["day","hour"]}},"type":"object"},"AllocationRollbackCondition":{"required":["goal","operator","value","min_visitors"],"properties":{"goal":{"$ref":"#/components/schemas/GoalWithType"},"operator":{"description":"Operator to apply on the goal condition","type":"string","enum":["GREATER_THAN","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value to apply on the goal condition","type":"integer"},"min_visitors":{"description":"Minimum of visitors to reach to trigger the rollback","type":"integer"}},"type":"object"},"GoalWithType":{"allOf":[{"$ref":"#/components/schemas/GoalType"},{"$ref":"#/components/schemas/Goal"}]},"GoalType":{"properties":{"type":{"description":"Type of the goal","type":"string","enum":["transaction","event","pageview","screenview"]}},"type":"object"},"Goal":{"required":["label"],"properties":{"id":{"description":"ID of the goal","type":"string","readOnly":true},"label":{"description":"Label of the goal","type":"string"},"operator":{"description":"Operator of the goal (for pageview, screenview types)","type":"string","enum":["contains","ignoringParameters","exact","regexp"]},"value":{"description":"Value of the goal (for pageview, screenview types)","type":"string"}},"type":"object"}}},"paths":{"/accounts/{account_id}/account_environments/{account_environment_id}/campaigns/{campaign_id}/variation_groups":{"post":{"tags":["Variation Groups"],"summary":"Create a variation group","description":"Create a variation group","operationId":"0c0e2dfd24f4aa121fe04561393a3f46","parameters":[{"$ref":"#/components/parameters/account_id"},{"$ref":"#/components/parameters/account_environment_id"},{"$ref":"#/components/parameters/campaign_id"}],"requestBody":{"description":"Informations of the variation group","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariationGroup"}}}},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariationGroup"}}}},"400":{"description":"Validation errors"}}}}}}
```

## Get one variation group

> Return one variation group by its id

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"tags":[{"name":"Variation Groups","description":"Manage variation groups"}],"servers":[{"url":"https://api.flagship.io/v1"}],"security":[{"token":[]}],"components":{"securitySchemes":{"token":{"type":"apiKey","description":"Prefix the token with 'Bearer ' to indicate it is a bearer token","name":"Authorization","in":"header"}},"parameters":{"account_id":{"name":"account_id","in":"path","description":"The ID of the account","required":true,"schema":{"type":"string"}},"account_environment_id":{"name":"account_environment_id","in":"path","description":"The ID of the environment","required":true,"schema":{"type":"string"}},"campaign_id":{"name":"campaign_id","in":"path","description":"The ID of the campaign","required":true,"schema":{"type":"string"}},"variation_group_id":{"name":"variation_group_id","in":"path","description":"The ID of the variation group","required":true,"schema":{"type":"string"}}},"schemas":{"VariationGroup":{"required":["variations"],"properties":{"id":{"description":"ID of the variation group","type":"string","readOnly":true},"name":{"description":"Name of the variation group","type":"string"},"variations":{"description":"List of variations","type":"array","items":{"$ref":"#/components/schemas/Variation"}},"targeting":{"$ref":"#/components/schemas/Targeting"},"allocation_config":{"$ref":"#/components/schemas/AllocationConfig"}},"type":"object"},"Variation":{"required":["name","allocation"],"properties":{"id":{"description":"ID of the variation","type":"string","readOnly":true},"name":{"description":"Name of the variation","type":"string"},"reference":{"description":"Wether the variation is the reference or not","type":"boolean"},"allocation":{"description":"Allocation of the variation (0-100)","type":"integer"},"modifications":{"$ref":"#/components/schemas/Modifications"}},"type":"object"},"Modifications":{"required":["type","value"],"properties":{"type":{"description":"Type of the modification","type":"string"},"value":{"description":"Value of the variation","type":"object"}},"type":"object"},"Targeting":{"required":["targetingGroups"],"properties":{"targeting_groups":{"description":"List of targeting groups","type":"array","items":{"$ref":"#/components/schemas/TargetingGroup"}}},"type":"object"},"TargetingGroup":{"required":["targetings"],"properties":{"targetings":{"description":"List of targeting items","type":"array","items":{"$ref":"#/components/schemas/TargetingItem"}}},"type":"object"},"TargetingItem":{"required":["key","operator","value"],"properties":{"key":{"description":"Key of the targeting","type":"string"},"operator":{"description":"Operator of the targeting","type":"string","enum":["EQUALS","NOT_EQUALS","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","GREATER_THAN","EXISTS","NOT_EXISTS","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value of the targeting, can be a string or an array of strings","oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"type":"object"},"AllocationConfig":{"required":["start_date","start_allocation","timezone"],"properties":{"start_date":{"description":"Start date with format YYYY-mm-dd H:i:s. Example : 2022-02-01 10:00:00.","type":"string","format":"date-time"},"timezone":{"description":"Timezone of the allocation config (ex: Europe/Paris)","type":"string"},"start_allocation":{"description":"First allocation to set at the start_date time.","type":"number","format":"float"},"periodic_steps":{"$ref":"#/components/schemas/AllocationStep"},"custom_steps":{"description":"Define custom steps for the allocation, each step allocation and date must be relative to the allocation start date.","type":"array","items":{"$ref":"#/components/schemas/AllocationStep"}},"rollback_condition":{"$ref":"#/components/schemas/AllocationRollbackCondition"}},"type":"object"},"AllocationStep":{"required":["allocation","step","stepType"],"properties":{"allocation_step":{"description":"Allocation percentage to add at each new allocation update. For a custom_steps type, set this allocation to the allocation to reach.","type":"number","format":"float"},"step":{"description":"Number of days/hours (step_type property to be defined) to add at each new allocation update. For a custom_steps type, set this value to the step value to reach.","type":"integer"},"step_type":{"description":"Chose the step type (day, hour).","type":"string","enum":["day","hour"]}},"type":"object"},"AllocationRollbackCondition":{"required":["goal","operator","value","min_visitors"],"properties":{"goal":{"$ref":"#/components/schemas/GoalWithType"},"operator":{"description":"Operator to apply on the goal condition","type":"string","enum":["GREATER_THAN","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value to apply on the goal condition","type":"integer"},"min_visitors":{"description":"Minimum of visitors to reach to trigger the rollback","type":"integer"}},"type":"object"},"GoalWithType":{"allOf":[{"$ref":"#/components/schemas/GoalType"},{"$ref":"#/components/schemas/Goal"}]},"GoalType":{"properties":{"type":{"description":"Type of the goal","type":"string","enum":["transaction","event","pageview","screenview"]}},"type":"object"},"Goal":{"required":["label"],"properties":{"id":{"description":"ID of the goal","type":"string","readOnly":true},"label":{"description":"Label of the goal","type":"string"},"operator":{"description":"Operator of the goal (for pageview, screenview types)","type":"string","enum":["contains","ignoringParameters","exact","regexp"]},"value":{"description":"Value of the goal (for pageview, screenview types)","type":"string"}},"type":"object"}}},"paths":{"/accounts/{account_id}/account_environments/{account_environment_id}/campaigns/{campaign_id}/variation_groups/{variation_group_id}":{"get":{"tags":["Variation Groups"],"summary":"Get one variation group","description":"Return one variation group by its id","operationId":"790dd2784584937896abb8904e11dc48","parameters":[{"$ref":"#/components/parameters/account_id"},{"$ref":"#/components/parameters/account_environment_id"},{"$ref":"#/components/parameters/campaign_id"},{"$ref":"#/components/parameters/variation_group_id"}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariationGroup"}}}},"404":{"description":"Not Found"}}}}}}
```

## Delete a variation group

> Delete a variation group by its id.

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"tags":[{"name":"Variation Groups","description":"Manage variation groups"}],"servers":[{"url":"https://api.flagship.io/v1"}],"security":[{"token":[]}],"components":{"securitySchemes":{"token":{"type":"apiKey","description":"Prefix the token with 'Bearer ' to indicate it is a bearer token","name":"Authorization","in":"header"}},"parameters":{"account_id":{"name":"account_id","in":"path","description":"The ID of the account","required":true,"schema":{"type":"string"}},"account_environment_id":{"name":"account_environment_id","in":"path","description":"The ID of the environment","required":true,"schema":{"type":"string"}},"campaign_id":{"name":"campaign_id","in":"path","description":"The ID of the campaign","required":true,"schema":{"type":"string"}},"variation_group_id":{"name":"variation_group_id","in":"path","description":"The ID of the variation group","required":true,"schema":{"type":"string"}}}},"paths":{"/accounts/{account_id}/account_environments/{account_environment_id}/campaigns/{campaign_id}/variation_groups/{variation_group_id}":{"delete":{"tags":["Variation Groups"],"summary":"Delete a variation group","description":"Delete a variation group by its id.","operationId":"57f1560a170dc1735d4d63b609402935","parameters":[{"$ref":"#/components/parameters/account_id"},{"$ref":"#/components/parameters/account_environment_id"},{"$ref":"#/components/parameters/campaign_id"},{"$ref":"#/components/parameters/variation_group_id"}],"responses":{"204":{"description":"Deleted"},"404":{"description":"Not Found"}}}}}}
```

## Update a variation group

> Update variation group informations - You can set only the properies you want to update in the request body.

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"tags":[{"name":"Variation Groups","description":"Manage variation groups"}],"servers":[{"url":"https://api.flagship.io/v1"}],"security":[{"token":[]}],"components":{"securitySchemes":{"token":{"type":"apiKey","description":"Prefix the token with 'Bearer ' to indicate it is a bearer token","name":"Authorization","in":"header"}},"parameters":{"account_id":{"name":"account_id","in":"path","description":"The ID of the account","required":true,"schema":{"type":"string"}},"account_environment_id":{"name":"account_environment_id","in":"path","description":"The ID of the environment","required":true,"schema":{"type":"string"}},"campaign_id":{"name":"campaign_id","in":"path","description":"The ID of the campaign","required":true,"schema":{"type":"string"}},"variation_group_id":{"name":"variation_group_id","in":"path","description":"The ID of the variation group","required":true,"schema":{"type":"string"}}},"schemas":{"VariationGroup":{"required":["variations"],"properties":{"id":{"description":"ID of the variation group","type":"string","readOnly":true},"name":{"description":"Name of the variation group","type":"string"},"variations":{"description":"List of variations","type":"array","items":{"$ref":"#/components/schemas/Variation"}},"targeting":{"$ref":"#/components/schemas/Targeting"},"allocation_config":{"$ref":"#/components/schemas/AllocationConfig"}},"type":"object"},"Variation":{"required":["name","allocation"],"properties":{"id":{"description":"ID of the variation","type":"string","readOnly":true},"name":{"description":"Name of the variation","type":"string"},"reference":{"description":"Wether the variation is the reference or not","type":"boolean"},"allocation":{"description":"Allocation of the variation (0-100)","type":"integer"},"modifications":{"$ref":"#/components/schemas/Modifications"}},"type":"object"},"Modifications":{"required":["type","value"],"properties":{"type":{"description":"Type of the modification","type":"string"},"value":{"description":"Value of the variation","type":"object"}},"type":"object"},"Targeting":{"required":["targetingGroups"],"properties":{"targeting_groups":{"description":"List of targeting groups","type":"array","items":{"$ref":"#/components/schemas/TargetingGroup"}}},"type":"object"},"TargetingGroup":{"required":["targetings"],"properties":{"targetings":{"description":"List of targeting items","type":"array","items":{"$ref":"#/components/schemas/TargetingItem"}}},"type":"object"},"TargetingItem":{"required":["key","operator","value"],"properties":{"key":{"description":"Key of the targeting","type":"string"},"operator":{"description":"Operator of the targeting","type":"string","enum":["EQUALS","NOT_EQUALS","STARTS_WITH","ENDS_WITH","CONTAINS","NOT_CONTAINS","GREATER_THAN","EXISTS","NOT_EXISTS","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value of the targeting, can be a string or an array of strings","oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}},"type":"object"},"AllocationConfig":{"required":["start_date","start_allocation","timezone"],"properties":{"start_date":{"description":"Start date with format YYYY-mm-dd H:i:s. Example : 2022-02-01 10:00:00.","type":"string","format":"date-time"},"timezone":{"description":"Timezone of the allocation config (ex: Europe/Paris)","type":"string"},"start_allocation":{"description":"First allocation to set at the start_date time.","type":"number","format":"float"},"periodic_steps":{"$ref":"#/components/schemas/AllocationStep"},"custom_steps":{"description":"Define custom steps for the allocation, each step allocation and date must be relative to the allocation start date.","type":"array","items":{"$ref":"#/components/schemas/AllocationStep"}},"rollback_condition":{"$ref":"#/components/schemas/AllocationRollbackCondition"}},"type":"object"},"AllocationStep":{"required":["allocation","step","stepType"],"properties":{"allocation_step":{"description":"Allocation percentage to add at each new allocation update. For a custom_steps type, set this allocation to the allocation to reach.","type":"number","format":"float"},"step":{"description":"Number of days/hours (step_type property to be defined) to add at each new allocation update. For a custom_steps type, set this value to the step value to reach.","type":"integer"},"step_type":{"description":"Chose the step type (day, hour).","type":"string","enum":["day","hour"]}},"type":"object"},"AllocationRollbackCondition":{"required":["goal","operator","value","min_visitors"],"properties":{"goal":{"$ref":"#/components/schemas/GoalWithType"},"operator":{"description":"Operator to apply on the goal condition","type":"string","enum":["GREATER_THAN","LOWER_THAN","GREATER_THAN_OR_EQUALS","LOWER_THAN_OR_EQUALS"]},"value":{"description":"Value to apply on the goal condition","type":"integer"},"min_visitors":{"description":"Minimum of visitors to reach to trigger the rollback","type":"integer"}},"type":"object"},"GoalWithType":{"allOf":[{"$ref":"#/components/schemas/GoalType"},{"$ref":"#/components/schemas/Goal"}]},"GoalType":{"properties":{"type":{"description":"Type of the goal","type":"string","enum":["transaction","event","pageview","screenview"]}},"type":"object"},"Goal":{"required":["label"],"properties":{"id":{"description":"ID of the goal","type":"string","readOnly":true},"label":{"description":"Label of the goal","type":"string"},"operator":{"description":"Operator of the goal (for pageview, screenview types)","type":"string","enum":["contains","ignoringParameters","exact","regexp"]},"value":{"description":"Value of the goal (for pageview, screenview types)","type":"string"}},"type":"object"}}},"paths":{"/accounts/{account_id}/account_environments/{account_environment_id}/campaigns/{campaign_id}/variation_groups/{variation_group_id}":{"patch":{"tags":["Variation Groups"],"summary":"Update a variation group","description":"Update variation group informations - You can set only the properies you want to update in the request body.","operationId":"9c67aceba6ba933d79a04e6306a6a960","parameters":[{"$ref":"#/components/parameters/account_id"},{"$ref":"#/components/parameters/account_environment_id"},{"$ref":"#/components/parameters/campaign_id"},{"$ref":"#/components/parameters/variation_group_id"}],"requestBody":{"description":"Informations of the variation group","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariationGroup"}}}},"responses":{"200":{"description":"Updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariationGroup"}}}},"400":{"description":"Validation errors"}}}}}}
```
