# Models

## The Account object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Account":{"required":["name"],"properties":{"id":{"description":"ID of the account","type":"string","readOnly":true},"account":{"description":"Name of the account","type":"string"}},"type":"object"}}}}
```

## The AccountEnvironment object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"AccountEnvironment":{"required":["name"],"properties":{"id":{"description":"ID of the accountEnvironment","type":"string","readOnly":true},"environment":{"description":"Name of the accountEnvironment","type":"string"},"isMain":{"description":"Is this accountEnvironment the main production one","type":"string"},"panic":{"description":"Is this accountEnvironment in panic mode","type":"string"},"singleAssignment":{"description":"Is XP-C enabled for this accountEnvironment","type":"string"}},"type":"object"}}}}
```

## The Panic object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Panic":{"required":["panic"],"properties":{"panic":{"description":"Status of the panic mode","type":"string","enum":["on","off"]}},"type":"object"}}}}
```

## The UserList object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"UserList":{"required":["data"],"properties":{"data":{"description":"List of users","type":"array","items":{"$ref":"#/components/schemas/User"}}},"type":"object"},"User":{"required":["email","role"],"properties":{"email":{"description":"Email of the user","type":"string"},"role":{"description":"Role of the user","type":"string","enum":["ACCOUNT_OWNER","SUPER_ADMIN","PROJECT_MANAGER","MEMBER","GUEST"]}},"type":"object"}}}}
```

## The User object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"User":{"required":["email","role"],"properties":{"email":{"description":"Email of the user","type":"string"},"role":{"description":"Role of the user","type":"string","enum":["ACCOUNT_OWNER","SUPER_ADMIN","PROJECT_MANAGER","MEMBER","GUEST"]}},"type":"object"}}}}
```

## The CampaignGoalVersioner object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"CampaignGoalVersioner":{"type":"object","allOf":[{"$ref":"#/components/schemas/GoalWithType"},{"properties":{"metrics":{"description":"Metrics to be measured (for event, transaction goal types)","type":"array","items":{"type":"string","enum":["uniqueConversions","averageValue","value"]}}},"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"}}}}
```

## The Campaign object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Campaign":{"required":["project_id","name","description","type","variationGroups"],"properties":{"id":{"description":"ID of the campaign","type":"string","readOnly":true},"project_id":{"description":"ID of the campaign's project","type":"string"},"name":{"description":"Name of the campaign","type":"string"},"slug":{"description":"Slug of the campaign","type":"string"},"description":{"description":"Description of the campaign","type":"string"},"type":{"description":"Type of the campaign","type":"string","enum":["ab","perso","deployment","flag","custom","toggle"]},"status":{"description":"Status of the campaign","type":"string","enum":["draft","active","paused","interrupted","hold","deleted"],"readOnly":true},"scheduler":{"$ref":"#/components/schemas/Scheduler"},"created_at":{"description":"Creation date of campaign","type":"string","format":"date-time","readOnly":true},"updated_at":{"description":"Update date of the campaign","type":"string","format":"date-time","readOnly":true},"primary_goal":{"$ref":"#/components/schemas/CampaignGoalVersioner"}},"type":"object"},"Scheduler":{"required":["start_date","timezone"],"properties":{"start_date":{"description":"Scheduler start date with format YYYY-mm-dd H:i:s. Example : 2022-02-01 10:00:00.","type":"string","format":"date-time"},"stop_date":{"description":"Scheduler end date with format YYYY-mm-dd H:i:s. Example : 2022-02-02 10:00:00","type":"string","format":"date-time"},"timezone":{"description":"Scheduler timezone. Example : Europe/Paris.","type":"string"}},"type":"object"},"CampaignGoalVersioner":{"type":"object","allOf":[{"$ref":"#/components/schemas/GoalWithType"},{"properties":{"metrics":{"description":"Metrics to be measured (for event, transaction goal types)","type":"array","items":{"type":"string","enum":["uniqueConversions","averageValue","value"]}}},"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"}}}}
```

## The Scheduler object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Scheduler":{"required":["start_date","timezone"],"properties":{"start_date":{"description":"Scheduler start date with format YYYY-mm-dd H:i:s. Example : 2022-02-01 10:00:00.","type":"string","format":"date-time"},"stop_date":{"description":"Scheduler end date with format YYYY-mm-dd H:i:s. Example : 2022-02-02 10:00:00","type":"string","format":"date-time"},"timezone":{"description":"Scheduler timezone. Example : Europe/Paris.","type":"string"}},"type":"object"}}}}
```

## The Flag object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Flag":{"required":["name","type","source","description"],"properties":{"id":{"description":"ID of the flag","type":"string","readOnly":true},"name":{"description":"Name of the flag","type":"string"},"description":{"description":"Description of the flag","type":"string"},"type":{"description":"Type of the flag","type":"string","enum":["string","boolean","number","array","object"]},"source":{"description":"Source of the flag","type":"string","enum":["manual","cli"]},"default_value":{"description":"Default value of the flag (default value is only supported for string type)","type":"string"},"created_at":{"description":"Creation date of the flag","type":"string","format":"date-time","readOnly":true}},"type":"object"}}}}
```

## The FlagWithMultiple object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"FlagWithMultiple":{"allOf":[{"properties":{"flags":{"description":"List of flags (use this if you want to add multiple flags at once)","type":"array","items":{"$ref":"#/components/schemas/Flag"}}},"type":"object"},{"$ref":"#/components/schemas/Flag"}]},"Flag":{"required":["name","type","source","description"],"properties":{"id":{"description":"ID of the flag","type":"string","readOnly":true},"name":{"description":"Name of the flag","type":"string"},"description":{"description":"Description of the flag","type":"string"},"type":{"description":"Type of the flag","type":"string","enum":["string","boolean","number","array","object"]},"source":{"description":"Source of the flag","type":"string","enum":["manual","cli"]},"default_value":{"description":"Default value of the flag (default value is only supported for string type)","type":"string"},"created_at":{"description":"Creation date of the flag","type":"string","format":"date-time","readOnly":true}},"type":"object"}}}}
```

## The FlagUsageGroup object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"FlagUsageGroup":{"properties":{"repositoryUrl":{"description":"Git repository url of the flag usage (in client client)","type":"string"},"repositoryBranch":{"description":"Git branch of the flag usage (in client client)","type":"string"},"flags":{"description":"List of flags (array with flagKey, filePath, lineNumber, codeLineHighlight, code. See FlagUsage model)","type":"array","items":{"$ref":"#/components/schemas/FlagUsage"}}},"type":"object"},"FlagUsage":{"properties":{"id":{"description":"ID of the flag usage","type":"string","readOnly":true},"flagKey":{"description":"Key of the flag usage","type":"string"},"filePath":{"description":"File path of the flag usage (in client client)","type":"string"},"lineNumber":{"description":"Line of the flag usage (in client client)","type":"string"},"codeLineHighlight":{"description":"Line of code to highlight for the flag usage (in client client)","type":"string"},"code":{"description":"Code of the flag usage (in client client)","type":"string"}},"type":"object"}}}}
```

## The FlagUsage object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"FlagUsage":{"properties":{"id":{"description":"ID of the flag usage","type":"string","readOnly":true},"flagKey":{"description":"Key of the flag usage","type":"string"},"filePath":{"description":"File path of the flag usage (in client client)","type":"string"},"lineNumber":{"description":"Line of the flag usage (in client client)","type":"string"},"codeLineHighlight":{"description":"Line of code to highlight for the flag usage (in client client)","type":"string"},"code":{"description":"Code of the flag usage (in client client)","type":"string"}},"type":"object"}}}}
```

## The Goal object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The GoalType object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"GoalType":{"properties":{"type":{"description":"Type of the goal","type":"string","enum":["transaction","event","pageview","screenview"]}},"type":"object"}}}}
```

## The GoalWithType object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The Key object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Key":{"required":["type","name","description"],"properties":{"id":{"description":"ID of the targeting_key","type":"string","readOnly":true},"type":{"description":"Type of the targeting_key","type":"string","enum":["string","boolean","number"]},"name":{"description":"Name of the targeting key","type":"string"},"description":{"description":"Description of the targeting key","type":"string"}},"type":"object"}}}}
```

## The KeyWithMultiple object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"KeyWithMultiple":{"allOf":[{"properties":{"targeting_keys":{"description":"List of targeting keys (use this if you want to add multiple targeting keys at once)","type":"array","items":{"$ref":"#/components/schemas/Key"}}},"type":"object"},{"$ref":"#/components/schemas/Key"}]},"Key":{"required":["type","name","description"],"properties":{"id":{"description":"ID of the targeting_key","type":"string","readOnly":true},"type":{"description":"Type of the targeting_key","type":"string","enum":["string","boolean","number"]},"name":{"description":"Name of the targeting key","type":"string"},"description":{"description":"Description of the targeting key","type":"string"}},"type":"object"}}}}
```

## The Project object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Project":{"required":["name"],"properties":{"id":{"description":"ID of the project","type":"string","readOnly":true},"name":{"description":"Name of the project","type":"string"}},"type":"object"}}}}
```

## The Toggler object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Toggler":{"required":["state"],"properties":{"state":{"description":"State of the toggler","type":"string","enum":["draft","active","paused","interrupted","hold","deleted"]}},"type":"object"}}}}
```

## The Modifications object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"Modifications":{"required":["type","value"],"properties":{"type":{"description":"Type of the modification","type":"string"},"value":{"description":"Value of the variation","type":"object"}},"type":"object"}}}}
```

## The Variation object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The AllocationConfig object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The AllocationRollbackCondition object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The AllocationStep object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The Targeting object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The TargetingGroup object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The TargetingItem object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"schemas":{"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"}}}}
```

## The VariationGroup object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"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"}}}}
```

## The ItemCollection object

```json
{"openapi":"3.0.0","info":{"title":"Flagship - Remote Control API","version":"1.0"},"components":{"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"}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.abtasty.com/server-side/remote-control-api/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
