{
  "openapi": "3.0.0",
  "info": {
    "title": "Binom",
    "version": "v2",
    "description": "Official Binom 2 public-demo OpenAPI snapshot, acquired 2026-09-30. Example values removed for internal distribution. Verify against /api/doc of the target installation."
  },
  "servers": [
    {
      "url": "",
      "description": "API over HTTP"
    }
  ],
  "paths": {
    "/public/api/v1/affiliate_network/{id}/clone": {
      "get": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Clone Affiliate Network.",
        "operationId": "get_v1_affiliate_network_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Affiliate Network data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "offerUrlTemplate": {
                      "type": "string"
                    },
                    "postbackUrl": {
                      "type": "string"
                    },
                    "postbackIpWhitelist": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "statusPayoutRelations": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "conversionStatus": {
                            "type": "string"
                          },
                          "payout": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "isPayoutRelationsActive": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/affiliate_network": {
      "post": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Create Affiliate Network.",
        "operationId": "post_v1_affiliate_network_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "offerUrlTemplate": {
                    "type": "string",
                    "nullable": true
                  },
                  "postbackUrl": {
                    "type": "string",
                    "nullable": true
                  },
                  "postbackIpWhitelist": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/ipv46"
                    },
                    "nullable": true
                  },
                  "statusPayoutRelations": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "conversionStatus": {
                          "type": "string"
                        },
                        "payout": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "nullable": true
                  },
                  "isPayoutRelationsActive": {
                    "type": "boolean"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Affiliate Network created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/affiliate_network/{id}": {
      "get": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Get Affiliate Network details.",
        "operationId": "get_v1_affiliate_network_detail",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Affiliate Network data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "offerUrlTemplate": {
                      "type": "string"
                    },
                    "postbackUrl": {
                      "type": "string"
                    },
                    "postbackIpWhitelist": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "statusPayoutRelations": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "conversionStatus": {
                            "type": "string"
                          },
                          "payout": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "isPayoutRelationsActive": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Edit Affiliate Network.",
        "operationId": "put_v1_affiliate_network_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "offerUrlTemplate": {
                    "type": "string",
                    "nullable": true
                  },
                  "postbackUrl": {
                    "type": "string",
                    "nullable": true
                  },
                  "postbackIpWhitelist": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/ipv46"
                    },
                    "nullable": true
                  },
                  "statusPayoutRelations": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "conversionStatus": {
                          "type": "string"
                        },
                        "payout": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "nullable": true
                  },
                  "isPayoutRelationsActive": {
                    "type": "boolean"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Affiliate Network edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Delete Affiliate Network.",
        "operationId": "delete_v1_affiliate_network_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Affiliate Network deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Restore Affiliate Network.",
        "operationId": "patch_v1_affiliate_network_restore",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Affiliate Network restored successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/affiliate_network/list/filtered": {
      "get": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Get Affiliate network list filtered.",
        "operationId": "get_v1_affiliate_network_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/excludeIdsRanges"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/excludeDeleted"
          }
        ],
        "responses": {
          "200": {
            "description": "Affiliate networks fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/affiliate_network/list/all": {
      "get": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Get Affiliate Network list.",
        "operationId": "get_v1_affiliate_network_list",
        "responses": {
          "200": {
            "description": "Affiliate Network data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      },
                      "offerUrlTemplate": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/affiliate_network/preset/catalog": {
      "get": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Get Affiliate Network presets.",
        "operationId": "get_v1_affiliate_network_preset_catalog",
        "responses": {
          "200": {
            "description": "Affiliate Network Presets fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "offerUrlTemplate": {
                        "type": "string"
                      },
                      "postbackUrl": {
                        "type": "string"
                      },
                      "signupUrl": {
                        "type": "string"
                      },
                      "options": {
                        "type": "string"
                      },
                      "topVerticals": {
                        "type": "string"
                      },
                      "geo": {
                        "type": "string"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/affiliate_network/{id}/rename": {
      "put": {
        "tags": [
          "Affiliate Network"
        ],
        "summary": "Rename Affiliate Network.",
        "operationId": "put_v1_affiliate_network_rename",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Affiliate Network renamed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clicks/campaign/{id}": {
      "get": {
        "tags": [
          "Clicks"
        ],
        "summary": "Update campaign's clicks cost via GET request.",
        "description": "Note: This endpoint performs the same operation as the PUT version,\nbut accepts parameters as query string for compatibility.",
        "operationId": "get_v1_campaign_clicks_get_update_cost",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Campaign ID",
            "required": true,
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "datePreset",
            "in": "query",
            "description": "Date preset",
            "required": false,
            "schema": {
              "type": "string",
              "default": "today",
              "enum": [
                "today",
                "yesterday",
                "this_week",
                "last_week",
                "last_2_days",
                "last_3_days",
                "last_7_days",
                "last_14_days",
                "last_30_days",
                "this_month",
                "last_month",
                "this_year",
                "last_year",
                "all_time",
                "custom_time"
              ]
            }
          },
          {
            "name": "dateFrom",
            "in": "query",
            "description": "Start date (format: YYYY-MM-DD HH:MM:SS). Required if datePreset is 'custom_time'",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "dateTo",
            "in": "query",
            "description": "End date (format: YYYY-MM-DD HH:MM:SS). Required if datePreset is 'custom_time'",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "timezone",
            "in": "query",
            "description": "Timezone for dates",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tokenId",
            "in": "query",
            "description": "Token ID",
            "required": false,
            "schema": {
              "type": "integer",
              "enum": [
                1,
                2,
                3,
                4,
                5,
                6,
                7,
                8,
                9,
                10,
                11,
                12,
                13,
                14,
                15,
                16,
                17,
                18,
                19,
                20,
                21,
                22,
                23,
                24,
                25,
                26,
                27,
                28,
                29,
                30
              ],
              "nullable": true
            }
          },
          {
            "name": "tokenValue",
            "in": "query",
            "description": "Token value",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "model",
            "in": "query",
            "description": "Cost model",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "CPC",
                "COSTS"
              ]
            }
          },
          {
            "name": "cost",
            "in": "query",
            "description": "Cost value",
            "required": true,
            "schema": {
              "type": "number",
              "format": "float"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "Currency code",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "uniqueness",
            "in": "query",
            "description": "Uniqueness filter. Empty string for no filter",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "",
                "campaign",
                "tracker",
                "campaign_or_tracker"
              ],
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Task to update cost created"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Clicks not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Clicks"
        ],
        "summary": "Update campaign`s clicks cost.",
        "operationId": "put_v1_campaign_clicks_update_cost",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/updateCost"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Task to update cost created"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Clicks not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Clicks"
        ],
        "summary": "Delete clicks for one campaign.",
        "operationId": "delete_v1_campaign_clicks_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/deleteCampaignClicksExternal"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign`s clicks deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clicks/campaigns": {
      "delete": {
        "tags": [
          "Clicks"
        ],
        "summary": "Delete campaign's clicks.",
        "operationId": "delete_v1_campaigns_clicks_delete",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/deleteCampaignsClicksExternal"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign`s clicks deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/info/affiliate_network": {
      "get": {
        "tags": [
          "Info stats"
        ],
        "summary": "Get affiliate networks info.",
        "operationId": "get_v1_affiliate_network_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Info fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "offers": {
                            "type": "string|integer"
                          },
                          "is_noted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      {
                        "description": "This represents the totals row. There must be exactly one totals row and it must be the last item in the array.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "total_count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/info/campaign": {
      "get": {
        "tags": [
          "Info stats"
        ],
        "summary": "Get campaigns info.",
        "operationId": "get_v1_campaign_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/trafficSourceIds"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Info fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string",
                            "nullable": true
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "current_cpc": {
                            "type": "integer"
                          },
                          "link": {
                            "type": "string"
                          },
                          "is_noted": {
                            "type": "boolean"
                          },
                          "is_domain_banned": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      {
                        "description": "This represents the totals row. There must be exactly one totals row and it must be the last item in the array.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "total_count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/info/landing": {
      "get": {
        "tags": [
          "Info stats"
        ],
        "summary": "Get landings info.",
        "operationId": "get_v1_landing_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/languages"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Info fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string",
                            "nullable": true
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "location": {
                            "type": "string"
                          },
                          "is_noted": {
                            "type": "boolean"
                          },
                          "is_integrated": {
                            "type": "boolean"
                          },
                          "is_domain_banned": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      {
                        "description": "This represents the totals row. There must be exactly one totals row and it must be the last item in the array.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "total_count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/info/offer": {
      "get": {
        "tags": [
          "Info stats"
        ],
        "summary": "Get offers info.",
        "operationId": "get_v1_offer_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/affiliateNetworkIds"
          },
          {
            "$ref": "#/components/parameters/geo"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Info fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string",
                            "nullable": true
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "country_code": {
                            "type": "string"
                          },
                          "affiliate_network": {
                            "type": "string",
                            "nullable": true
                          },
                          "url": {
                            "type": "string"
                          },
                          "is_noted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      {
                        "description": "This represents the totals row. There must be exactly one totals row and it must be the last item in the array.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "total_count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/info/rotation": {
      "get": {
        "tags": [
          "Info stats"
        ],
        "summary": "Get rotations info.",
        "operationId": "get_v1_rotation_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Info fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string",
                            "nullable": true
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "campaigns": {
                            "type": "string|integer"
                          },
                          "is_noted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      {
                        "description": "This represents the totals row. There must be exactly one totals row and it must be the last item in the array.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "total_count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/info/traffic_source": {
      "get": {
        "tags": [
          "Info stats"
        ],
        "summary": "Get traffic sources info.",
        "operationId": "get_v1_traffic_source_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Info fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "campaigns": {
                            "type": "string|integer"
                          },
                          "is_noted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      {
                        "description": "This represents the totals row. There must be exactly one totals row and it must be the last item in the array.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string|integer"
                          },
                          "first_click_time": {
                            "type": "string",
                            "format": "date-time",
                            "nullable": true
                          },
                          "clicks_last_hour": {
                            "type": "string|integer"
                          },
                          "leads_last_hour": {
                            "type": "string|integer"
                          },
                          "profit_last_hour": {
                            "type": "string|integer"
                          },
                          "seconds_since_last_lead": {
                            "type": "string|integer",
                            "nullable": true
                          },
                          "mean_time_to_convert": {
                            "type": "string|number",
                            "nullable": true
                          },
                          "total_count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/{page}": {
      "get": {
        "tags": [
          "Report"
        ],
        "summary": "Get Report.",
        "description": "Example: https://tracker-doma.in/public/api/v1/report/campaign?ids[]=1&ids[]=3&groupings[]=campaign&groupings[]=path&groupings[]=landing&datePreset=today&dateFrom=2022-01-01 00:00:00&dateTo=2022-01-02 00:00:00&timezone=utc&sortColumn=clicks&sortType=asc&limit=100&offset=0\n<br><br>\n<br>simpleFilterId: uuid from /public/api/v1/columns/{subject}\n<br>sortColumn: Column key from /public/api/v1/columns",
        "operationId": "get_v1_report",
        "parameters": [
          {
            "$ref": "#/components/parameters/ids"
          },
          {
            "$ref": "#/components/parameters/page"
          },
          {
            "$ref": "#/components/parameters/groupings"
          },
          {
            "$ref": "#/components/parameters/nameFilter"
          },
          {
            "$ref": "#/components/parameters/markFilter"
          },
          {
            "$ref": "#/components/parameters/simpleFilterId"
          },
          {
            "$ref": "#/components/parameters/simpleFilter"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Report fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "report": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string"
                          },
                          "traffic_source": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/user/campaign": {
      "get": {
        "tags": [
          "Report"
        ],
        "summary": "Get user campaigns Report.",
        "description": "<br>simpleFilterId: uuid from /public/api/v1/columns/{subject}\n<br>sortColumn: Column key from /public/api/v1/columns",
        "operationId": "get_v1_report_user_campaign",
        "parameters": [
          {
            "$ref": "#/components/parameters/ids"
          },
          {
            "$ref": "#/components/parameters/groupings"
          },
          {
            "$ref": "#/components/parameters/nameFilter"
          },
          {
            "$ref": "#/components/parameters/markFilter"
          },
          {
            "$ref": "#/components/parameters/simpleFilterId"
          },
          {
            "$ref": "#/components/parameters/simpleFilter"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Report fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "report": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string"
                          },
                          "traffic_source": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          },
          "418": {
            "description": "Report for more than 100 campaigns is not allowed"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/affiliate_network/groupings": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Affiliate network Groupings for single aggregate.",
        "operationId": "get_v1_report_affiliate_network_groupings",
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/campaign/groupings": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Campaign Groupings for single aggregate.",
        "operationId": "get_v1_report_campaign_groupings",
        "parameters": [
          {
            "$ref": "#/components/parameters/campaignId"
          }
        ],
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/groupingToken"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/campaign/groupings/multiple": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Groupings for multiple aggregates.",
        "operationId": "get_v1_report_campaign_groupings_multiple",
        "parameters": [
          {
            "$ref": "#/components/parameters/ids"
          }
        ],
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/groupingToken"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/landing/groupings": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Landing Groupings for single aggregate.",
        "operationId": "get_v1_report_landing_groupings",
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/groupings/multiple": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Groupings for multiple aggregates.",
        "operationId": "get_v1_report_groupings_multiple",
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/offer/groupings": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Offer Groupings for single aggregate.",
        "operationId": "get_v1_report_offer_groupings",
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/rotation/groupings": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Rotation Groupings for single aggregate.",
        "operationId": "get_v1_report_rotation_groupings",
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/traffic_source/groupings": {
      "get": {
        "tags": [
          "Report groupings"
        ],
        "summary": "Get Traffic source Groupings for single aggregate.",
        "operationId": "get_v1_report_traffic_source_groupings",
        "parameters": [
          {
            "$ref": "#/components/parameters/trafficSourceId"
          }
        ],
        "responses": {
          "200": {
            "description": "Groupings fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "groupings": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/grouping"
                      }
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/groupingToken"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/mark/campaign/{id}": {
      "post": {
        "tags": [
          "Report Mark"
        ],
        "summary": "Set mark to token by campaign id.",
        "operationId": "post_v1_report_mark_set",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "token": {
                    "type": "integer",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ]
                  },
                  "tokenValue": {
                    "type": "string"
                  },
                  "mark": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Mark set successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Report Mark"
        ],
        "summary": "Delete mark for token by campaign id.",
        "operationId": "delete_v1_report_mark_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "token": {
                    "type": "integer",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ]
                  },
                  "tokenValue": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Mark deleted successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/mark/traffic_source/{id}": {
      "post": {
        "tags": [
          "Report Mark"
        ],
        "summary": "Set mark to token by traffic source id.",
        "operationId": "post_v1_report_mark_set_ts",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "token": {
                    "type": "integer",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ]
                  },
                  "tokenValue": {
                    "type": "string"
                  },
                  "mark": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Mark set successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Report Mark"
        ],
        "summary": "Delete mark for token by traffic source id.",
        "operationId": "delete_v1_report_mark_delete_ts",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "token": {
                    "type": "integer",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ]
                  },
                  "tokenValue": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Mark deleted successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/mark/campaign/{id}/multiple": {
      "post": {
        "tags": [
          "Report Mark"
        ],
        "summary": "Set mark to multiple tokens by campaign id.",
        "operationId": "post_v1_report_mark_set_multiple",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "token": {
                    "type": "integer",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ]
                  },
                  "tokenValues": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  },
                  "mark": {
                    "type": "string",
                    "enum": [
                      "plus",
                      "minus",
                      "close",
                      "star",
                      "check",
                      "paused",
                      "deleted"
                    ]
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Marks set successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/mark/traffic_source/{id}/multiple": {
      "post": {
        "tags": [
          "Report Mark"
        ],
        "summary": "Set mark to multiple tokens by traffic source id.",
        "operationId": "post_v1_report_mark_set_ts_multiple",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "token": {
                    "type": "integer",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ]
                  },
                  "tokenValues": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  },
                  "mark": {
                    "type": "string",
                    "enum": [
                      "plus",
                      "minus",
                      "close",
                      "star",
                      "check",
                      "paused",
                      "deleted"
                    ]
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Mark set successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/preset/{subject}/{uuid}": {
      "post": {
        "tags": [
          "Report Presets"
        ],
        "summary": "Create preset.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "post_v1_report_preset_create",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaign",
                "landing",
                "offer",
                "rotation",
                "affiliate_network",
                "traffic_source"
              ]
            }
          },
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "groupings": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Report preset created successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/preset/{uuid}": {
      "delete": {
        "tags": [
          "Report Presets"
        ],
        "summary": "Delete preset.",
        "operationId": "delete_v1_report_preset_delete",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Report preset deleted successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/preset/{subject}": {
      "get": {
        "tags": [
          "Report Presets"
        ],
        "summary": "Get presets by Subject.",
        "operationId": "get_v1_report_preset_get",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaign",
                "landing",
                "offer",
                "rotation",
                "affiliate_network",
                "traffic_source"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Report presets fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "groupings": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/simple_filter/{subject}/{uuid}": {
      "post": {
        "tags": [
          "Report Simple filters"
        ],
        "summary": "Create Simple filter.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "post_v1_report_simple_filter_create",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaign",
                "landing",
                "offer",
                "rotation",
                "affiliate_network",
                "traffic_source"
              ]
            }
          },
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "filters": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "level": {
                          "type": "integer"
                        },
                        "column": {
                          "type": "string"
                        },
                        "operator": {
                          "type": "string"
                        },
                        "value": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Report Simple filter created successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/simple_filter/{uuid}": {
      "put": {
        "tags": [
          "Report Simple filters"
        ],
        "summary": "Edit Simple filter.",
        "operationId": "put_v1_report_simple_filter_edit",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "filters": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "level": {
                          "type": "integer"
                        },
                        "column": {
                          "type": "string"
                        },
                        "operator": {
                          "type": "string"
                        },
                        "value": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Report Simple filter edited successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Report Simple filters"
        ],
        "summary": "Delete Simple filter.",
        "operationId": "delete_v1_report_simple_filter_delete",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Report Simple filter deleted successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/simple_filter/operators/list": {
      "get": {
        "tags": [
          "Report Simple filters"
        ],
        "summary": "Get Simple filter Operators.",
        "operationId": "get_v1_report_simple_filter_operators",
        "responses": {
          "200": {
            "description": "Report Simple filter operators fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/report/simple_filter/{subject}": {
      "get": {
        "tags": [
          "Report Simple filters"
        ],
        "summary": "Get Simple filters by Subject.",
        "operationId": "get_v1_report_simple_filter_get",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaign",
                "landing",
                "offer",
                "rotation",
                "affiliate_network",
                "traffic_source"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Report Simple filters fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string"
                      },
                      "filters": {
                        "type": "array",
                        "items": {
                          "properties": {
                            "level": {
                              "type": "integer"
                            },
                            "column": {
                              "type": "string"
                            },
                            "operator": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            }
                          },
                          "type": "object"
                        },
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/stats/affiliate_network": {
      "get": {
        "tags": [
          "Stats"
        ],
        "summary": "Get stats Affiliate Network.",
        "operationId": "get_v1_affiliate_network_stats",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Analytics fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "clicks": {
                            "type": "string"
                          },
                          "lander_views": {
                            "type": "string"
                          },
                          "lander_clicks": {
                            "type": "string"
                          },
                          "lander_ctr": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "cr": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "string"
                          },
                          "profit": {
                            "type": "string"
                          },
                          "epc": {
                            "type": "string"
                          },
                          "cpc": {
                            "type": "string"
                          },
                          "bots": {
                            "type": "string"
                          },
                          "cost": {
                            "type": "string"
                          },
                          "roi": {
                            "type": "string"
                          },
                          "unique_clicks": {
                            "type": "string"
                          },
                          "unique_campaign_clicks": {
                            "type": "string"
                          },
                          "offers": {
                            "type": "string"
                          },
                          "custom1": {
                            "type": "string"
                          },
                          "cost/leads": {
                            "type": "string"
                          },
                          "event_1": {
                            "type": "string"
                          },
                          "event_30": {
                            "type": "string"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "isNoted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/stats/campaign": {
      "get": {
        "tags": [
          "Stats"
        ],
        "summary": "Get stats Campaign.",
        "operationId": "get_v1_campaign_stats",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "name": "searchId",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchCampaignKey",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchName",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchDomain",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/trafficSourceIds"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Analytics fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "rotationName": {
                            "type": "string",
                            "nullable": true
                          },
                          "group": {
                            "type": "string"
                          },
                          "traffic_source": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "is_noted": {
                            "type": "boolean"
                          },
                          "is_domain_banned": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/stats/landing": {
      "get": {
        "tags": [
          "Stats"
        ],
        "summary": "Get stats Landing.",
        "operationId": "get_v1_landing_stats",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/languages"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Analytics fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string"
                          },
                          "language": {
                            "type": "string"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          },
                          "lander_ctr": {
                            "type": "number",
                            "format": "float"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "is_noted": {
                            "type": "boolean"
                          },
                          "is_integrated": {
                            "type": "boolean"
                          },
                          "is_domain_banned": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/stats/offer": {
      "get": {
        "tags": [
          "Stats"
        ],
        "summary": "Get stats Offer.",
        "operationId": "get_v1_offer_stats",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/affiliateNetworkIds"
          },
          {
            "$ref": "#/components/parameters/geo"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Analytics fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "group": {
                            "type": "string"
                          },
                          "geo": {
                            "type": "string"
                          },
                          "affiliate_network": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          },
                          "lander_ctr": {
                            "type": "number",
                            "format": "float"
                          },
                          "cap": {
                            "type": "string"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "isNoted": {
                            "type": "boolean"
                          },
                          "payout": {
                            "$ref": "#/components/schemas/offerPayout"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/stats/rotation": {
      "get": {
        "tags": [
          "Stats"
        ],
        "summary": "Get stats Rotation.",
        "operationId": "get_v1_rotation_stats",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Analytics fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "name": {
                            "type": "string"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          },
                          "lander_ctr": {
                            "type": "number",
                            "format": "float"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "isNoted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/stats/traffic_source": {
      "get": {
        "tags": [
          "Stats"
        ],
        "summary": "Get stats Traffic Source.",
        "operationId": "get_v1_traffic_source_stats",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/tags"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Analytics fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "name": {
                            "type": "string"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          },
                          "isNoted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/api_key/block/{id}": {
      "post": {
        "tags": [
          "Identity API key"
        ],
        "summary": "Identity Block ApiKey",
        "operationId": "post_v1_identity_api_key_block",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Api key blocked"
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/api_key/{id}": {
      "get": {
        "tags": [
          "Identity API key"
        ],
        "summary": "Identity Get ApiKey",
        "operationId": "get_v1_identity_api_key",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the Api key and isBlocked of the given identity id",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "apiKey": {
                        "type": "string"
                      },
                      "isBlocked": {
                        "type": "boolean"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/api_key/refresh/{id}": {
      "put": {
        "tags": [
          "Identity API key"
        ],
        "summary": "Identity Refresh ApiKey",
        "operationId": "put_v1_identity_api_key_refresh",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Api key refreshed"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/api_key/unblock/{id}": {
      "post": {
        "tags": [
          "Identity API key"
        ],
        "summary": "Identity Unblock ApiKey",
        "operationId": "post_v1_identity_api_key_unblock",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Api key unblocked"
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/binom/protect/license": {
      "get": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Get License Information",
        "description": "Fetches current license information from Binom Protect service.",
        "operationId": "get_v1_binom_protect_license_get",
        "responses": {
          "200": {
            "description": "License information",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/licenseInfo"
                }
              }
            }
          },
          "404": {
            "description": "License or tracker not found"
          },
          "412": {
            "description": "Suspicious activity detected"
          },
          "500": {
            "description": "Server error"
          },
          "502": {
            "description": "Unexpected response from license server"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/binom/protect/methods": {
      "get": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Get available bot detection methods and presets",
        "operationId": "get_v1_binom_protect_methods",
        "responses": {
          "200": {
            "description": "Returns list of available bot detection methods and presets",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "methods": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "key": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "description": {
                            "type": "string"
                          },
                          "needsProxyVpnDetection": {
                            "type": "boolean"
                          },
                          "isJavascriptMethod": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "presets": {
                      "properties": {
                        "light": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "medium": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "paranoid": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/binom/protect/campaign/{campaignId}/settings": {
      "get": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Get Settings for a Campaign",
        "operationId": "get_v1_binom_protect_settings_get",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Protection status",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "isProxyVpnDetectionActive": {
                      "type": "boolean"
                    },
                    "isBotDetectionActive": {
                      "type": "boolean"
                    },
                    "isObserveBasicMethods": {
                      "type": "boolean",
                      "default": false,
                      "nullable": true
                    },
                    "isObserveJsMethods": {
                      "type": "boolean",
                      "default": false,
                      "nullable": true
                    },
                    "detectionMode": {
                      "type": "string",
                      "enum": [
                        "one",
                        "all"
                      ]
                    },
                    "botDetectionMethods": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "VPN/ABUSE",
                          "DC",
                          "CORP",
                          "CRAWL",
                          "BOT",
                          "FAKE",
                          "APP",
                          "FB",
                          "RATE",
                          "FIRST",
                          "TLS",
                          "TCP",
                          "VPN",
                          "FAKE MOB",
                          "BASIC JS",
                          "ADVANCED JS",
                          "TIME/VPN",
                          "FRAME",
                          "ADVANCED+ JS",
                          "RDNS",
                          "NOJS"
                        ]
                      }
                    },
                    "rateLimitSettings": {
                      "properties": {
                        "clicksCount": {
                          "description": "Maximum number of clicks allowed within the time window",
                          "type": "integer",
                          "maximum": 100,
                          "minimum": 1
                        },
                        "windowSizeInSeconds": {
                          "description": "Time window size in seconds",
                          "type": "integer",
                          "maximum": 86400,
                          "minimum": 1
                        }
                      },
                      "type": "object",
                      "nullable": true
                    },
                    "firstVisitSettings": {
                      "properties": {
                        "clicksCount": {
                          "description": "First N clicks to be identified as bot traffic",
                          "type": "integer",
                          "minimum": 1
                        },
                        "alreadyMarked": {
                          "description": "Number of visits automatically classified as bot traffic",
                          "type": "integer"
                        }
                      },
                      "type": "object",
                      "nullable": true
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "404": {
            "description": "Settings not found"
          },
          "403": {
            "description": "No access to a Campaign"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Update Settings for a Campaign",
        "operationId": "post_v1_binom_protect_settings_upsert",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "isProxyVpnDetectionActive": {
                    "type": "boolean"
                  },
                  "isBotDetectionActive": {
                    "type": "boolean"
                  },
                  "isObserveBasicMethods": {
                    "type": "boolean",
                    "default": false,
                    "nullable": true
                  },
                  "isObserveJsMethods": {
                    "type": "boolean",
                    "default": false,
                    "nullable": true
                  },
                  "detectionMode": {
                    "type": "string",
                    "default": "one",
                    "enum": [
                      "one",
                      "all"
                    ],
                    "nullable": true
                  },
                  "botDetectionMethods": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "VPN/ABUSE",
                        "DC",
                        "CORP",
                        "CRAWL",
                        "BOT",
                        "FAKE",
                        "APP",
                        "FB",
                        "RATE",
                        "FIRST",
                        "TLS",
                        "TCP",
                        "VPN",
                        "FAKE MOB",
                        "BASIC JS",
                        "ADVANCED JS",
                        "TIME/VPN",
                        "FRAME",
                        "ADVANCED+ JS",
                        "RDNS",
                        "NOJS"
                      ]
                    }
                  },
                  "rateLimitSettings": {
                    "properties": {
                      "clicksCount": {
                        "description": "Maximum number of clicks allowed within the time window",
                        "type": "integer",
                        "maximum": 100,
                        "minimum": 1
                      },
                      "windowSizeInSeconds": {
                        "description": "Time window size in seconds",
                        "type": "integer",
                        "maximum": 86400,
                        "minimum": 1
                      }
                    },
                    "type": "object",
                    "nullable": true
                  },
                  "firstVisitSettings": {
                    "properties": {
                      "clicksCount": {
                        "description": "Specifies the initial number of clicks to classify as bot traffic",
                        "type": "integer",
                        "default": 10,
                        "minimum": 1
                      }
                    },
                    "type": "object",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings updated"
          },
          "403": {
            "description": "Only super admin is allowed"
          },
          "400": {
            "description": "Invalid request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/binom/protect/campaigns/settings": {
      "post": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Update Settings for multiple Campaigns",
        "operationId": "post_v1_binom_protect_settings_mass_upsert",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "description": "id of campaign",
                      "type": "integer"
                    }
                  },
                  "isProxyVpnDetectionActive": {
                    "type": "boolean"
                  },
                  "isBotDetectionActive": {
                    "type": "boolean"
                  },
                  "isObserveBasicMethods": {
                    "type": "boolean",
                    "default": false,
                    "nullable": true
                  },
                  "isObserveJsMethods": {
                    "type": "boolean",
                    "default": false,
                    "nullable": true
                  },
                  "detectionMode": {
                    "type": "string",
                    "default": "one",
                    "enum": [
                      "one",
                      "all"
                    ],
                    "nullable": true
                  },
                  "botDetectionMethods": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "VPN/ABUSE",
                        "DC",
                        "CORP",
                        "CRAWL",
                        "BOT",
                        "FAKE",
                        "APP",
                        "FB",
                        "RATE",
                        "FIRST",
                        "TLS",
                        "TCP",
                        "VPN",
                        "FAKE MOB",
                        "BASIC JS",
                        "ADVANCED JS",
                        "TIME/VPN",
                        "FRAME",
                        "ADVANCED+ JS",
                        "RDNS",
                        "NOJS"
                      ]
                    }
                  },
                  "rateLimitSettings": {
                    "properties": {
                      "clicksCount": {
                        "description": "Maximum number of clicks allowed within the time window",
                        "type": "integer",
                        "maximum": 100,
                        "minimum": 1
                      },
                      "windowSizeInSeconds": {
                        "description": "Time window size in seconds",
                        "type": "integer",
                        "maximum": 86400,
                        "minimum": 1
                      }
                    },
                    "type": "object",
                    "nullable": true
                  },
                  "firstVisitSettings": {
                    "properties": {
                      "clicksCount": {
                        "description": "Specifies the initial number of clicks to classify as bot traffic",
                        "type": "integer",
                        "default": 10,
                        "minimum": 1
                      }
                    },
                    "type": "object",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings updated not for all campaigns",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/binom/protect/license/trial": {
      "post": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Request Trial License",
        "description": "Requests a trial license from Binom Protect service.",
        "operationId": "post_v1_binom_protect_license_trial",
        "responses": {
          "200": {
            "description": "Trial license requested successfully"
          },
          "404": {
            "description": "Tracker not found"
          },
          "409": {
            "description": "Trial already taken"
          },
          "412": {
            "description": "Suspicious activity detected"
          },
          "500": {
            "description": "Server error"
          },
          "502": {
            "description": "Unexpected response from license server"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/binom/protect/visits/{campaignId}/reset": {
      "post": {
        "tags": [
          "Binom Protect"
        ],
        "summary": "Reset first visits counter.",
        "operationId": "post_v1_binom_protect_visits_reset",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Reset"
          },
          "403": {
            "description": "No access to a Campaign"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/csv/clicklog/clear": {
      "delete": {
        "tags": [
          "CSV"
        ],
        "summary": "Delete all clicklog files.",
        "operationId": "delete_v1_csv_clicklog_clear",
        "responses": {
          "200": {
            "description": "Deleted all clicklog files"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/csv/conversions/clear": {
      "delete": {
        "tags": [
          "CSV"
        ],
        "summary": "Delete all conversion files.",
        "operationId": "delete_v1_csv_conversions_clear",
        "responses": {
          "200": {
            "description": "Deleted all conversion files"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/csv/file/{filename}": {
      "get": {
        "tags": [
          "CSV"
        ],
        "summary": "Download file by name.",
        "operationId": "get_v1_csv_file_download",
        "parameters": [
          {
            "name": "filename",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful file download",
            "headers": {
              "Content-Disposition": {
                "description": "Indicates that the response should be treated as a file attachment",
                "schema": {
                  "type": "string"
                }
              },
              "Content-Type": {
                "description": "MIME type of the file",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "File not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "CSV"
        ],
        "summary": "Delete file by name.",
        "operationId": "delete_v1_csv_delete_file",
        "parameters": [
          {
            "name": "filename",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "File has been deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/csv/task/dequeue/{id}": {
      "post": {
        "tags": [
          "CSV"
        ],
        "summary": "Remove task from the queue.",
        "operationId": "post_v1_csv_task_dequeue",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Task has been successfully removed from the queue"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/csv/task/enqueue": {
      "post": {
        "tags": [
          "CSV"
        ],
        "summary": "Add new task to the queue.",
        "operationId": "post_v1_csv_task_enqueue",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/enqueueTask"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Task successfully added to queue"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/csv/files": {
      "get": {
        "tags": [
          "CSV"
        ],
        "summary": "Get csv files.",
        "operationId": "get_v1_get_csv_files",
        "responses": {
          "200": {
            "description": "Files fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "clicklog": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "size_kb": {
                            "type": "integer"
                          },
                          "created_at": {
                            "type": "string",
                            "format": "date-time"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "conversions": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "size_kb": {
                            "type": "integer"
                          },
                          "created_at": {
                            "type": "string",
                            "format": "date-time"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "total_size_kb": {
                      "type": "integer"
                    },
                    "used_size_kb": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/change_setting": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Edit Settings for multiple Campaigns",
        "operationId": "post_v1_campaign_change_setting",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "postbackPercent": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "payoutPercent": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "trafficLossPercent": {
                    "type": "integer",
                    "nullable": true
                  },
                  "appendToCampaignUrl": {
                    "type": "string",
                    "nullable": true
                  },
                  "appendToOfferUrl": {
                    "type": "string",
                    "nullable": true
                  },
                  "appendToLandingUrl": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign settings edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/change_cost": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change cost for multiple Campaigns",
        "operationId": "post_v1_campaigns_change_cost",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "costModel": {
                    "type": "string",
                    "enum": [
                      "CPC",
                      "CPM",
                      "CPA"
                    ],
                    "nullable": true
                  },
                  "amount": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "EUR",
                      "GBP",
                      "RUB",
                      "CNY",
                      "PLN",
                      "JPY",
                      "UAH",
                      "CAD",
                      "BTC",
                      "IDR",
                      "INR",
                      "TRY",
                      "PHP",
                      "VND"
                    ],
                    "nullable": true
                  },
                  "isAuto": {
                    "type": "boolean",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign change cost",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/change_domain": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change Domain for multiple Campaigns",
        "operationId": "post_v1_campaigns_change_domain",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "domainUuid": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign Domain change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/change_group": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change Group for multiple Campaigns",
        "operationId": "post_v1_campaigns_change_group",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign Group change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/owner": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change Campaigns Owner",
        "operationId": "post_v1_campaigns_change_owner",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "ownerId": {
                    "type": "integer",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign Domain change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/{campaignId}/owner": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change Campaign Owner",
        "operationId": "post_v1_campaign_change_owner",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ownerId": {
                    "type": "integer",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign Owner changed"
          },
          "403": {
            "description": "No access to owner or campaign"
          },
          "404": {
            "description": "Campaign not found"
          },
          "409": {
            "description": "Owner not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Campaign"
        ],
        "summary": "Delete Campaign Owner",
        "operationId": "delete_v1_campaign_delete_owner",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaign Owner deleted"
          },
          "403": {
            "description": "No access to campaign"
          },
          "404": {
            "description": "Campaign not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/change_traffic_distribution_info": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change TrafficDistributionInfo for multiple Campaigns",
        "description": "hideReferrerDomain: const or id from /public/api/v1/domains",
        "operationId": "post_v1_campaigns_change_traffic_distribution_info",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "trafficSourceId": {
                    "type": "integer",
                    "nullable": false
                  },
                  "distributionType": {
                    "type": "string",
                    "enum": [
                      "NORMAL",
                      "SMART_PATHS",
                      "SMART_PATHS_LPS",
                      "SMART_PATHS_LPS_OFFERS",
                      "FIX_ON_PATH",
                      "FIX_ON_PATH_LPS",
                      "FIX_ON_PATH_LPS_OFFERS"
                    ],
                    "nullable": false
                  },
                  "hideReferrerType": {
                    "type": "string",
                    "enum": [
                      "NONE",
                      "SMART_META_REFRESH",
                      "SMART_META_REFRESH_LANDING",
                      "SMART_META_REFRESH_LANDING_OFFER"
                    ],
                    "nullable": false
                  },
                  "hideReferrerDomain": {
                    "description": "Can contain either one of predefined values (NONE_DOMAIN, AUTO_DOMAIN, CAMPAIGN_DOMAIN) or one of tracker domains ID",
                    "nullable": true,
                    "oneOf": [
                      {
                        "description": "Predefined enum values",
                        "type": "string",
                        "enum": [
                          "NONE_DOMAIN",
                          "AUTO_DOMAIN",
                          "CAMPAIGN_DOMAIN"
                        ]
                      },
                      {
                        "description": "Any domain ID from tracker",
                        "type": "string"
                      }
                    ]
                  },
                  "rotationId": {
                    "type": "integer",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign change TrafficDistributionInfo",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/{id}/clone": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Clone Campaign.",
        "operationId": "get_v1_campaign_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaign fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "key": {
                      "type": "string",
                      "nullable": false
                    },
                    "groupUuid": {
                      "type": "string",
                      "nullable": true
                    },
                    "trafficSourceId": {
                      "type": "integer",
                      "nullable": false
                    },
                    "cost": {
                      "properties": {
                        "model": {
                          "type": "string",
                          "enum": [
                            "CPC",
                            "CPM",
                            "CPA"
                          ],
                          "nullable": false
                        },
                        "money": {
                          "properties": {
                            "amount": {
                              "type": "number",
                              "format": "float",
                              "nullable": false
                            },
                            "currency": {
                              "type": "string",
                              "enum": [
                                "USD",
                                "EUR",
                                "GBP",
                                "RUB",
                                "CNY",
                                "PLN",
                                "JPY",
                                "UAH",
                                "CAD",
                                "BTC",
                                "IDR",
                                "INR",
                                "TRY",
                                "PHP",
                                "VND"
                              ],
                              "nullable": false
                            }
                          },
                          "type": "object"
                        },
                        "isAuto": {
                          "type": "boolean",
                          "nullable": false
                        }
                      },
                      "type": "object"
                    },
                    "hideReferrer": {
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "NONE",
                            "META_REFRESH",
                            "DOUBLE_META_REFRESH",
                            "SMART_META_REFRESH"
                          ],
                          "nullable": false
                        },
                        "domainUuid": {
                          "type": "string",
                          "nullable": true
                        }
                      },
                      "type": "object"
                    },
                    "distributionType": {
                      "type": "string",
                      "enum": [
                        "NORMAL",
                        "SMART_PATHS",
                        "SMART_PATHS_LPS",
                        "SMART_PATHS_LPS_OFFERS",
                        "FIX_ON_PATH",
                        "FIX_ON_PATH_LPS",
                        "FIX_ON_PATH_LPS_OFFERS"
                      ],
                      "nullable": false
                    },
                    "rotationId": {
                      "type": "integer",
                      "nullable": true
                    },
                    "customRotation": {
                      "properties": {
                        "defaultPaths": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/rotationDefaultPathGet"
                          },
                          "nullable": false
                        },
                        "rules": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/rotationRuleGet"
                          }
                        }
                      },
                      "type": "object",
                      "nullable": true
                    },
                    "campaignSettings": {
                      "$ref": "#/components/schemas/campaignSettings"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Create Campaign.",
        "description": "<br>groupUuid: uuid from /public/api/v1/groups/campaigns or null\n<br>domainUuid: id from /public/api/v1/domains\n<br>hideReferrerDomain: const or id from /public/api/v1/domains",
        "operationId": "post_v1_campaign_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "key": {
                    "type": "string",
                    "nullable": true
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "trafficSourceId": {
                    "type": "integer",
                    "nullable": false
                  },
                  "costModel": {
                    "type": "string",
                    "enum": [
                      "CPC",
                      "CPM",
                      "CPA"
                    ],
                    "nullable": false
                  },
                  "amount": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "EUR",
                      "GBP",
                      "RUB",
                      "CNY",
                      "PLN",
                      "JPY",
                      "UAH",
                      "CAD",
                      "BTC",
                      "IDR",
                      "INR",
                      "TRY",
                      "PHP",
                      "VND"
                    ],
                    "nullable": false
                  },
                  "isAuto": {
                    "type": "boolean",
                    "nullable": false
                  },
                  "hideReferrerType": {
                    "type": "string",
                    "enum": [
                      "NONE",
                      "SMART_META_REFRESH",
                      "SMART_META_REFRESH_LANDING",
                      "SMART_META_REFRESH_LANDING_OFFER"
                    ],
                    "nullable": false
                  },
                  "hideReferrerDomain": {
                    "description": "Can contain either one of predefined values (NONE_DOMAIN, AUTO_DOMAIN, CAMPAIGN_DOMAIN) or one of tracker domains ID",
                    "nullable": true,
                    "oneOf": [
                      {
                        "description": "Predefined enum values",
                        "type": "string",
                        "enum": [
                          "NONE_DOMAIN",
                          "AUTO_DOMAIN",
                          "CAMPAIGN_DOMAIN"
                        ]
                      },
                      {
                        "description": "Any domain ID from tracker",
                        "type": "string"
                      }
                    ]
                  },
                  "domainUuid": {
                    "type": "string",
                    "nullable": false
                  },
                  "distributionType": {
                    "type": "string",
                    "enum": [
                      "NORMAL",
                      "SMART_PATHS",
                      "SMART_PATHS_LPS",
                      "SMART_PATHS_LPS_OFFERS",
                      "FIX_ON_PATH",
                      "FIX_ON_PATH_LPS",
                      "FIX_ON_PATH_LPS_OFFERS"
                    ],
                    "nullable": false
                  },
                  "rotationId": {
                    "type": "integer",
                    "nullable": true
                  },
                  "customRotation": {
                    "properties": {
                      "defaultPaths": {
                        "type": "array",
                        "items": {
                          "$ref": "#/components/schemas/rotationDefaultPathCreate"
                        },
                        "nullable": false
                      },
                      "rules": {
                        "type": "array",
                        "items": {
                          "$ref": "#/components/schemas/rotationRuleCreate"
                        },
                        "nullable": false
                      }
                    },
                    "type": "object",
                    "nullable": true
                  },
                  "campaignSettings": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/campaignSettings"
                      }
                    ],
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Campaign created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/{id}": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get Campaign with generated link, settings, tokens, tags, and custom rotation data.",
        "operationId": "get_v1_campaign_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaign fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string",
                      "nullable": false
                    },
                    "createdAt": {
                      "type": "string",
                      "nullable": false
                    },
                    "deletedAt": {
                      "type": "string",
                      "nullable": true
                    },
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "link": {
                      "type": "string",
                      "nullable": false
                    },
                    "groupUuid": {
                      "type": "string",
                      "nullable": true
                    },
                    "trafficSourceId": {
                      "type": "integer",
                      "nullable": false
                    },
                    "ownerId": {
                      "type": "integer",
                      "nullable": true
                    },
                    "cost": {
                      "properties": {
                        "model": {
                          "type": "string",
                          "enum": [
                            "CPC",
                            "CPM",
                            "CPA"
                          ],
                          "nullable": false
                        },
                        "money": {
                          "properties": {
                            "amount": {
                              "type": "number",
                              "format": "float",
                              "nullable": false
                            },
                            "currency": {
                              "type": "string",
                              "enum": [
                                "USD",
                                "EUR",
                                "GBP",
                                "RUB",
                                "CNY",
                                "PLN",
                                "JPY",
                                "UAH",
                                "CAD",
                                "BTC",
                                "IDR",
                                "INR",
                                "TRY",
                                "PHP",
                                "VND"
                              ],
                              "nullable": false
                            }
                          },
                          "type": "object"
                        },
                        "isAuto": {
                          "type": "boolean",
                          "nullable": false
                        }
                      },
                      "type": "object"
                    },
                    "hideReferrer": {
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "NONE",
                            "META_REFRESH",
                            "DOUBLE_META_REFRESH",
                            "SMART_META_REFRESH"
                          ],
                          "nullable": false
                        },
                        "domain": {
                          "nullable": false,
                          "oneOf": [
                            {
                              "description": "Predefined enum values",
                              "type": "string",
                              "enum": [
                                "NONE_DOMAIN",
                                "AUTO_DOMAIN",
                                "CAMPAIGN_DOMAIN"
                              ]
                            },
                            {
                              "description": "Any domain ID from tracker",
                              "type": "string"
                            }
                          ]
                        }
                      },
                      "type": "object"
                    },
                    "distributionType": {
                      "type": "string",
                      "enum": [
                        "NORMAL",
                        "SMART_PATHS",
                        "SMART_PATHS_LPS",
                        "SMART_PATHS_LPS_OFFERS",
                        "FIX_ON_PATH",
                        "FIX_ON_PATH_LPS",
                        "FIX_ON_PATH_LPS_OFFERS"
                      ],
                      "nullable": false
                    },
                    "rotationId": {
                      "type": "integer",
                      "nullable": true
                    },
                    "customRotation": {
                      "properties": {
                        "uuid": {
                          "type": "string"
                        },
                        "defaultPaths": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/rotationDefaultPathGet"
                          },
                          "nullable": false
                        },
                        "rules": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/rotationRuleGet"
                          }
                        }
                      },
                      "type": "object",
                      "nullable": true
                    },
                    "campaignSettings": {
                      "$ref": "#/components/schemas/campaignSettingsData"
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string",
                            "nullable": false
                          },
                          "name": {
                            "type": "string",
                            "nullable": false
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "isDomainBanned": {
                      "type": "boolean"
                    },
                    "tags": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/tagView"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Campaign"
        ],
        "summary": "Edit Campaign.",
        "description": "<br>hideReferrerDomain: const or id from /public/api/v1/domains",
        "operationId": "put_v1_campaign_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "key": {
                    "type": "string",
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "trafficSourceId": {
                    "type": "integer",
                    "nullable": false
                  },
                  "costModel": {
                    "type": "string",
                    "enum": [
                      "CPC",
                      "CPM",
                      "CPA"
                    ],
                    "nullable": false
                  },
                  "amount": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "EUR",
                      "GBP",
                      "RUB",
                      "CNY",
                      "PLN",
                      "JPY",
                      "UAH",
                      "CAD",
                      "BTC",
                      "IDR",
                      "INR",
                      "TRY",
                      "PHP",
                      "VND"
                    ],
                    "nullable": false
                  },
                  "isAuto": {
                    "type": "boolean",
                    "nullable": false
                  },
                  "hideReferrerType": {
                    "type": "string",
                    "enum": [
                      "NONE",
                      "SMART_META_REFRESH",
                      "SMART_META_REFRESH_LANDING",
                      "SMART_META_REFRESH_LANDING_OFFER"
                    ],
                    "nullable": false
                  },
                  "hideReferrerDomain": {
                    "description": "Can contain either one of predefined values (NONE_DOMAIN, AUTO_DOMAIN, CAMPAIGN_DOMAIN) or one of tracker domains ID",
                    "nullable": true,
                    "oneOf": [
                      {
                        "description": "Predefined enum values",
                        "type": "string",
                        "enum": [
                          "NONE_DOMAIN",
                          "AUTO_DOMAIN",
                          "CAMPAIGN_DOMAIN"
                        ]
                      },
                      {
                        "description": "Any domain ID from tracker",
                        "type": "string"
                      }
                    ]
                  },
                  "domainUuid": {
                    "type": "string",
                    "nullable": false
                  },
                  "distributionType": {
                    "type": "string",
                    "enum": [
                      "NORMAL",
                      "SMART_PATHS",
                      "SMART_PATHS_LPS",
                      "SMART_PATHS_LPS_OFFERS",
                      "FIX_ON_PATH",
                      "FIX_ON_PATH_LPS",
                      "FIX_ON_PATH_LPS_OFFERS"
                    ],
                    "nullable": false
                  },
                  "rotationId": {
                    "type": "integer",
                    "nullable": true
                  },
                  "customRotation": {
                    "properties": {
                      "defaultPaths": {
                        "type": "array",
                        "items": {
                          "$ref": "#/components/schemas/rotationDefaultPath"
                        },
                        "nullable": false
                      },
                      "rules": {
                        "type": "array",
                        "items": {
                          "$ref": "#/components/schemas/rotationRule"
                        }
                      }
                    },
                    "type": "object",
                    "nullable": true
                  },
                  "campaignSettings": {
                    "$ref": "#/components/schemas/campaignSettingsData"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Campaign"
        ],
        "summary": "Delete Campaign.",
        "operationId": "delete_v1_campaign_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaign deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Campaign"
        ],
        "summary": "Restore Campaign.",
        "operationId": "patch_v1_campaign_restore",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaign restored successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/{id}/link": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get Campaign link.",
        "operationId": "get_v1_campaign_get_link",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaign fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "link": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/list/filtered": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get Campaign list filtered.",
        "operationId": "get_v1_campaign_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/accessLevel"
          },
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/groupUuid"
          },
          {
            "$ref": "#/components/parameters/trafficSourceId"
          },
          {
            "$ref": "#/components/parameters/excludeRotationId"
          },
          {
            "$ref": "#/components/parameters/excludeIdsRanges"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "name": "sortColumn",
            "in": "path",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "id",
                "name"
              ]
            }
          },
          {
            "$ref": "#/components/parameters/sortType"
          }
        ],
        "responses": {
          "200": {
            "description": "Campaigns data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      },
                      "groupUuid": {
                        "type": "string",
                        "nullable": true
                      },
                      "trafficSourceId": {
                        "type": "integer"
                      },
                      "trafficSourceName": {
                        "type": "string",
                        "nullable": false
                      },
                      "groupName": {
                        "type": "string",
                        "nullable": true
                      },
                      "isDomainBanned": {
                        "type": "boolean"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/short/info": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get Campaign short info with links.",
        "operationId": "get_v1_campaign_short_info",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/groupUuid"
          },
          {
            "$ref": "#/components/parameters/trafficSourceId"
          },
          {
            "$ref": "#/components/parameters/rotationId"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Campaigns data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      },
                      "key": {
                        "type": "string"
                      },
                      "domainUuid": {
                        "type": "string",
                        "nullable": true
                      },
                      "trafficSourceId": {
                        "type": "integer"
                      },
                      "link": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/by_rotation/{rotationId}/list": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get Campaigns list by Rotation ID.",
        "operationId": "get_v1_campaign_by_rotation_list",
        "parameters": [
          {
            "name": "rotationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Campaigns list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      },
                      "isDomainBanned": {
                        "type": "boolean"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/traffic_source/list": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get TrafficSource with Campaign list.",
        "operationId": "get_v1_campaign_traffic_source_list",
        "responses": {
          "200": {
            "description": "TrafficSource data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/{id}/permissions": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Get users with Permission access to the passed Campaign",
        "operationId": "get_v1_campaign_permissions",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Users fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/entityAccess"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Campaign not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Grant user access to the specified campaign",
        "operationId": "post_v1_campaign_permissions_add",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/addPermissionUserIds"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Permissions changed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Campaign not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Campaign"
        ],
        "summary": "Revoke users access to the specified campaign",
        "operationId": "delete_v1_campaign_permissions_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/removePermissionUserIds"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Permissions changed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Campaign not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/modify/{id}": {
      "patch": {
        "tags": [
          "Campaign"
        ],
        "summary": "Partially update Campaign.",
        "description": "to clear groupUuid use 'none', 'erase' or 'empty'.\n<br>hideReferrerDomain: const or id from /public/api/v1/domains",
        "operationId": "patch_v1_campaign_modify",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": true
                  },
                  "key": {
                    "type": "string",
                    "nullable": true
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "trafficSourceId": {
                    "type": "integer",
                    "nullable": true
                  },
                  "costModel": {
                    "type": "string",
                    "enum": [
                      "CPC",
                      "CPM",
                      "CPA"
                    ],
                    "nullable": true
                  },
                  "amount": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "EUR",
                      "GBP",
                      "RUB",
                      "CNY",
                      "PLN",
                      "JPY",
                      "UAH",
                      "CAD",
                      "BTC",
                      "IDR",
                      "INR",
                      "TRY",
                      "PHP",
                      "VND"
                    ],
                    "nullable": true
                  },
                  "isAuto": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "hideReferrerType": {
                    "type": "string",
                    "enum": [
                      "NONE",
                      "META_REFRESH",
                      "DOUBLE_META_REFRESH",
                      "SMART_META_REFRESH"
                    ],
                    "nullable": true
                  },
                  "hideReferrerDomain": {
                    "description": "Can contain either one of predefined values (NONE_DOMAIN, AUTO_DOMAIN, CAMPAIGN_DOMAIN) or one of tracker domains ID",
                    "nullable": true,
                    "oneOf": [
                      {
                        "description": "Predefined enum values",
                        "type": "string",
                        "enum": [
                          "NONE_DOMAIN",
                          "AUTO_DOMAIN",
                          "CAMPAIGN_DOMAIN"
                        ]
                      },
                      {
                        "description": "Any domain ID from tracker",
                        "type": "string"
                      }
                    ]
                  },
                  "domainUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "distributionType": {
                    "type": "string",
                    "enum": [
                      "NORMAL",
                      "SMART_PATHS",
                      "SMART_PATHS_LPS",
                      "SMART_PATHS_LPS_OFFERS",
                      "FIX_ON_PATH",
                      "FIX_ON_PATH_LPS",
                      "FIX_ON_PATH_LPS_OFFERS"
                    ],
                    "nullable": true
                  },
                  "rotationId": {
                    "type": "integer",
                    "nullable": true
                  },
                  "campaignSettings": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/campaignSettingsData"
                      }
                    ],
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign updated successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/landing/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause landing in campaign.",
        "operationId": "put_v1_campaign_landing_pause",
        "requestBody": {
          "description": "Pass rotationId only for not custom rotation. Pass ruleId, if you want to pause landing only inside the passed rule. Pass pathId, if you want to pause landing only inside the passed path.",
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "rotationId": {
                    "description": "Pass rotationId only for not custom rotation",
                    "type": "integer"
                  },
                  "ruleId": {
                    "description": "Pass ruleId, if you want to pause landing only inside the passed rule",
                    "type": "integer"
                  },
                  "pathId": {
                    "description": "Pass pathId, if you want to pause landing only inside the passed path",
                    "type": "integer"
                  },
                  "landingId": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing in campaign paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/offer/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause offer in campaign.",
        "operationId": "put_v1_campaign_offer_pause",
        "requestBody": {
          "description": "Pass rotationId only for not custom rotation. Pass ruleId, if you want to pause offer only inside the passed rule. Pass pathId, if you want to pause offer only inside the passed path. One of offerId, offerDirectUrl or offerCampaignId required.",
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "rotationId": {
                    "description": "Pass rotationId only for not custom rotation",
                    "type": "integer"
                  },
                  "ruleId": {
                    "description": "Pass ruleId, if you want to pause offer only inside the passed rule",
                    "type": "integer"
                  },
                  "pathId": {
                    "description": "Pass pathId, if you want to pause offer only inside the passed path",
                    "type": "integer"
                  },
                  "offerId": {
                    "description": "chose one from offerId, offerDirectUrl or offerCampaignId",
                    "type": "integer"
                  },
                  "offerCampaignId": {
                    "description": "chose one from offerId, offerDirectUrl or offerCampaignId",
                    "type": "integer"
                  },
                  "offerDirectUrl": {
                    "description": "chose one from offerId, offerDirectUrl or offerCampaignId",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offer in campaign paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/path/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause path in campaign.",
        "operationId": "put_v1_campaign_path_pause",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "pathId": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Path in campaign paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/rule/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause rule in campaign.",
        "operationId": "put_v1_campaign_rule_pause",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "ruleId": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Rule in campaign paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/{id}/rename": {
      "put": {
        "tags": [
          "Campaign"
        ],
        "summary": "Rename Campaign.",
        "operationId": "put_v1_campaign_rename",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaign renamed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/switch_domain": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Change Domain for multiple Campaigns",
        "operationId": "post_v1_campaigns_switch_domain",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "domainUuid": {
                    "type": "string",
                    "nullable": false
                  },
                  "toDomainUuid": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Campaigns Domain Switched"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/landing/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause landing in campaign.",
        "operationId": "put_v1_campaign_landing_unpause",
        "requestBody": {
          "description": "Pass rotationId only for not custom rotation. Pass ruleId, if you want to pause landing only inside the passed rule. Pass pathId, if you want to pause landing only inside the passed path.",
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "rotationId": {
                    "description": "Pass rotationId only for not custom rotation",
                    "type": "integer"
                  },
                  "ruleId": {
                    "description": "Pass ruleId, if you want to pause landing only inside the passed rule",
                    "type": "integer"
                  },
                  "pathId": {
                    "description": "Pass pathId, if you want to pause landing only inside the passed path",
                    "type": "integer"
                  },
                  "landingId": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing in campaign unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/offer/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause offer in campaign.",
        "operationId": "put_v1_campaign_offer_unpause",
        "requestBody": {
          "description": "Pass rotationId only for not custom rotation. Pass ruleId, if you want to pause offer only inside the passed rule. Pass pathId, if you want to pause offer only inside the passed path. One of offerId, offerDirectUrl or offerCampaignId required.",
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "rotationId": {
                    "description": "Pass rotationId only for not custom rotation",
                    "type": "integer"
                  },
                  "ruleId": {
                    "description": "Pass ruleId, if you want to pause offer only inside the passed rule",
                    "type": "integer"
                  },
                  "pathId": {
                    "description": "Pass pathId, if you want to pause offer only inside the passed path",
                    "type": "integer"
                  },
                  "offerId": {
                    "description": "chose one from offerId, offerDirectUrl or offerCampaignId",
                    "type": "integer"
                  },
                  "offerCampaignId": {
                    "description": "chose one from offerId, offerDirectUrl or offerCampaignId",
                    "type": "integer"
                  },
                  "offerDirectUrl": {
                    "description": "chose one from offerId, offerDirectUrl or offerCampaignId",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offer in campaign unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/path/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause path in campaign.",
        "operationId": "put_v1_campaign_path_unpause",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "pathId": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Path in campaign unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/campaign/rule/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause rule in campaign.",
        "operationId": "put_v1_campaign_rule_unpause",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  },
                  "ruleId": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Rule in campaign unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/change_click_cap": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Change Click Cap for multiple offers",
        "operationId": "post_v1_offers_change_click_cap",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/clickCapEntityMass"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Click Cap change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/cap/click/{offerId}": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Get Click Cap.",
        "operationId": "get_v1_get_click_cap",
        "parameters": [
          {
            "name": "offerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Click Cap fetched",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/clickCapEntity"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Offer"
        ],
        "summary": "Edit Click Cap.",
        "operationId": "put_v1_edit_click_cap",
        "parameters": [
          {
            "name": "offerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/clickCapEntity"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Click Cap edited"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Create Click Cap.",
        "operationId": "post_v1_create_click_cap",
        "parameters": [
          {
            "name": "offerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/clickCapEntity"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Click Cap created"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/deactivate_click_cap": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Deactivate Click Cap for multiple offers",
        "operationId": "post_v1_offers_deactivate_click_cap",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "minItems": 1,
                    "uniqueItems": true,
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Click Cap Clear",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/cap/click/{id}/maximize": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Maximize the Click cap.",
        "operationId": "post_v1_offer_click_cap_maximize",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Click Cap maximized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/cap/click/{id}/reset": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Reset the current Click cap.",
        "operationId": "post_v1_offer_click_cap_reset",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Click Cap reset"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/click/info/{id}": {
      "get": {
        "tags": [
          "ClickInfo"
        ],
        "summary": "Get click info by ID.",
        "operationId": "get_v1_click_info",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Click fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer"
                    },
                    "clicked_at": {
                      "description": "timezone always UTC",
                      "type": "string"
                    },
                    "uclick_id": {
                      "type": "string"
                    },
                    "campaign_id": {
                      "type": "integer"
                    },
                    "campaign_name": {
                      "type": "string"
                    },
                    "rotation_id": {
                      "type": "integer"
                    },
                    "path_id": {
                      "type": "integer"
                    },
                    "path_name": {
                      "type": "string"
                    },
                    "rule_id": {
                      "type": "integer"
                    },
                    "landing_id": {
                      "type": "integer"
                    },
                    "landing_name": {
                      "type": "string"
                    },
                    "landing_link": {
                      "type": "string"
                    },
                    "offer_id": {
                      "type": "integer"
                    },
                    "offer_name": {
                      "type": "string"
                    },
                    "offer_link": {
                      "type": "string"
                    },
                    "traffic_source_id": {
                      "type": "integer"
                    },
                    "traffic_source_name": {
                      "type": "string"
                    },
                    "aff_network_id": {
                      "type": "integer"
                    },
                    "aff_network_name": {
                      "type": "string"
                    },
                    "is_offer_clicked": {
                      "type": "boolean"
                    },
                    "offer_clicked_at": {
                      "description": "timezone always UTC",
                      "type": "string"
                    },
                    "cost": {
                      "type": "number",
                      "format": "float"
                    },
                    "user_agent": {
                      "type": "string"
                    },
                    "referer_domain": {
                      "type": "string"
                    },
                    "referer": {
                      "type": "string"
                    },
                    "language": {
                      "type": "string"
                    },
                    "ip_v4": {
                      "type": "string"
                    },
                    "ip_v6": {
                      "type": "string"
                    },
                    "is_bot": {
                      "type": "boolean"
                    },
                    "is_campaign_unique": {
                      "type": "boolean"
                    },
                    "is_tracker_unique": {
                      "type": "boolean"
                    },
                    "is_postback": {
                      "type": "boolean"
                    },
                    "payout": {
                      "type": "number",
                      "format": "float"
                    },
                    "conversion_status_one": {
                      "type": "string"
                    },
                    "conversion_status_two": {
                      "type": "string"
                    },
                    "conversed_at": {
                      "description": "timezone always UTC",
                      "type": "string"
                    },
                    "device_name": {
                      "type": "string"
                    },
                    "device_brand": {
                      "type": "string"
                    },
                    "device_model": {
                      "type": "string"
                    },
                    "device_type": {
                      "type": "string"
                    },
                    "os_name": {
                      "type": "string"
                    },
                    "os_version": {
                      "type": "string"
                    },
                    "browser_name": {
                      "type": "string"
                    },
                    "browser_version": {
                      "type": "string"
                    },
                    "continent": {
                      "type": "string"
                    },
                    "country": {
                      "type": "string"
                    },
                    "region": {
                      "type": "string"
                    },
                    "state": {
                      "type": "string"
                    },
                    "city": {
                      "type": "string"
                    },
                    "isp": {
                      "type": "string"
                    },
                    "organization": {
                      "type": "string"
                    },
                    "connection": {
                      "type": "string"
                    },
                    "event_1": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_2": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_3": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_4": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_5": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_6": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_7": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_8": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_9": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_10": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_11": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_12": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_13": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_14": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_15": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_16": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_17": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_18": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_19": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_20": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_21": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_22": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_23": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_24": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_25": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_26": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_27": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_28": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_29": {
                      "type": "number",
                      "format": "float"
                    },
                    "event_30": {
                      "type": "number",
                      "format": "float"
                    },
                    "external_id": {
                      "type": "string"
                    },
                    "token_1": {
                      "type": "string"
                    },
                    "token_2": {
                      "type": "string"
                    },
                    "token_3": {
                      "type": "string"
                    },
                    "token_4": {
                      "type": "string"
                    },
                    "token_5": {
                      "type": "string"
                    },
                    "token_6": {
                      "type": "string"
                    },
                    "token_7": {
                      "type": "string"
                    },
                    "token_8": {
                      "type": "string"
                    },
                    "token_9": {
                      "type": "string"
                    },
                    "token_10": {
                      "type": "string"
                    },
                    "token_11": {
                      "type": "string"
                    },
                    "token_12": {
                      "type": "string"
                    },
                    "token_13": {
                      "type": "string"
                    },
                    "token_14": {
                      "type": "string"
                    },
                    "token_15": {
                      "type": "string"
                    },
                    "token_16": {
                      "type": "string"
                    },
                    "token_17": {
                      "type": "string"
                    },
                    "token_18": {
                      "type": "string"
                    },
                    "token_19": {
                      "type": "string"
                    },
                    "token_20": {
                      "type": "string"
                    },
                    "token_21": {
                      "type": "string"
                    },
                    "token_22": {
                      "type": "string"
                    },
                    "token_23": {
                      "type": "string"
                    },
                    "token_24": {
                      "type": "string"
                    },
                    "token_25": {
                      "type": "string"
                    },
                    "token_26": {
                      "type": "string"
                    },
                    "token_27": {
                      "type": "string"
                    },
                    "token_28": {
                      "type": "string"
                    },
                    "token_29": {
                      "type": "string"
                    },
                    "token_30": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Click is not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clicklog/delete": {
      "delete": {
        "tags": [
          "ClickLog"
        ],
        "summary": "Delete Clicks.",
        "operationId": "delete_v1_clicklog_delete",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Clicks deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clicklog/columns": {
      "get": {
        "tags": [
          "ClickLog"
        ],
        "summary": "Get All ClickLog Columns.",
        "operationId": "get_v1_clicklog_get_columns",
        "responses": {
          "200": {
            "description": "Columns fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "columns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string",
                            "nullable": false
                          },
                          "name": {
                            "type": "string",
                            "nullable": false
                          },
                          "selected": {
                            "type": "boolean",
                            "nullable": false
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "ClickLog"
        ],
        "summary": "Update ClickLog Columns.",
        "operationId": "put_v1_clicklog_update_columns",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "columns": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "id": {
                          "type": "string",
                          "nullable": false
                        },
                        "selected": {
                          "type": "boolean",
                          "nullable": false
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "ClickLog Columns updated successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clicklog/click/{id}": {
      "get": {
        "tags": [
          "ClickLog"
        ],
        "summary": "Get clicklog by ID.",
        "operationId": "get_v1_clicklog_by_id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Click fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "clicked_date": {
                        "type": "string"
                      },
                      "click_time": {
                        "type": "string"
                      },
                      "offer_id": {
                        "type": "string"
                      },
                      "offer": {
                        "type": "string"
                      },
                      "campaign_id": {
                        "type": "string"
                      },
                      "campaign": {
                        "type": "string"
                      },
                      "campaign-key": {
                        "type": "string"
                      },
                      "rotation_id": {
                        "type": "string"
                      },
                      "rotation": {
                        "type": "string"
                      },
                      "rule_id": {
                        "type": "string"
                      },
                      "rule": {
                        "type": "string"
                      },
                      "path_id": {
                        "type": "string"
                      },
                      "path": {
                        "type": "string"
                      },
                      "landing_id": {
                        "type": "string"
                      },
                      "landing": {
                        "type": "string"
                      },
                      "aff_network_id": {
                        "type": "string"
                      },
                      "affiliate_network": {
                        "type": "string"
                      },
                      "traffic_source_id": {
                        "type": "string"
                      },
                      "traffic_source": {
                        "type": "string"
                      },
                      "ip_v4": {
                        "type": "string"
                      },
                      "ip_v6": {
                        "type": "string"
                      },
                      "user_agent": {
                        "type": "string"
                      },
                      "is_crawler": {
                        "type": "string"
                      },
                      "device_name": {
                        "type": "string"
                      },
                      "device_type": {
                        "type": "string"
                      },
                      "device_brand": {
                        "type": "string"
                      },
                      "device_model": {
                        "type": "string"
                      },
                      "device_resolution": {
                        "type": "string"
                      },
                      "os_name": {
                        "type": "string"
                      },
                      "os_version": {
                        "type": "string"
                      },
                      "browser_name": {
                        "type": "string"
                      },
                      "browser_version": {
                        "type": "string"
                      },
                      "language": {
                        "type": "string"
                      },
                      "referer_domain": {
                        "type": "string"
                      },
                      "referer": {
                        "type": "string"
                      },
                      "is_bot": {
                        "type": "string"
                      },
                      "is_campaign_unique": {
                        "type": "string"
                      },
                      "is_tracker_unique": {
                        "type": "string"
                      },
                      "payout": {
                        "type": "string"
                      },
                      "conversion": {
                        "type": "string"
                      },
                      "conversed_at": {
                        "type": "string"
                      },
                      "conversion_status_one": {
                        "type": "string"
                      },
                      "conversion_status_two": {
                        "type": "string"
                      },
                      "external_id": {
                        "type": "string"
                      },
                      "url": {
                        "type": "string"
                      },
                      "cost": {
                        "type": "string"
                      },
                      "event_1": {
                        "type": "string"
                      },
                      "event_30": {
                        "type": "string"
                      },
                      "token_1": {
                        "type": "string"
                      },
                      "token_30": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Click is not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clicklog": {
      "get": {
        "tags": [
          "ClickLog"
        ],
        "summary": "Get ClickLog Clicks.",
        "operationId": "get_v1_clicklog_get_clicks",
        "parameters": [
          {
            "$ref": "#/components/parameters/filter"
          },
          {
            "$ref": "#/components/parameters/from"
          },
          {
            "$ref": "#/components/parameters/to"
          },
          {
            "$ref": "#/components/parameters/cursor"
          },
          {
            "$ref": "#/components/parameters/campaignIds"
          },
          {
            "$ref": "#/components/parameters/groupIds"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/direction"
          }
        ],
        "responses": {
          "200": {
            "description": "Clicks fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "rows": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "clicked_date": {
                            "type": "string"
                          },
                          "click_time": {
                            "type": "string"
                          },
                          "offer_id": {
                            "type": "string"
                          },
                          "offer": {
                            "type": "string"
                          },
                          "campaign_id": {
                            "type": "string"
                          },
                          "campaign": {
                            "type": "string"
                          },
                          "campaign-key": {
                            "type": "string"
                          },
                          "rotation_id": {
                            "type": "string"
                          },
                          "rotation": {
                            "type": "string"
                          },
                          "rule_id": {
                            "type": "string"
                          },
                          "rule": {
                            "type": "string"
                          },
                          "path_id": {
                            "type": "string"
                          },
                          "path": {
                            "type": "string"
                          },
                          "landing_id": {
                            "type": "string"
                          },
                          "landing": {
                            "type": "string"
                          },
                          "aff_network_id": {
                            "type": "string"
                          },
                          "affiliate_network": {
                            "type": "string"
                          },
                          "traffic_source_id": {
                            "type": "string"
                          },
                          "traffic_source": {
                            "type": "string"
                          },
                          "ip_v4": {
                            "type": "string"
                          },
                          "ip_v6": {
                            "type": "string"
                          },
                          "ip": {
                            "description": "returns ipv4 or ipv6",
                            "type": "string"
                          },
                          "user_agent": {
                            "type": "string"
                          },
                          "is_crawler": {
                            "type": "string"
                          },
                          "device_name": {
                            "type": "string"
                          },
                          "device_type": {
                            "type": "string"
                          },
                          "device_brand": {
                            "type": "string"
                          },
                          "device_model": {
                            "type": "string"
                          },
                          "device_resolution": {
                            "type": "string"
                          },
                          "os_name": {
                            "type": "string"
                          },
                          "os_version": {
                            "type": "string"
                          },
                          "browser_name": {
                            "type": "string"
                          },
                          "browser_version": {
                            "type": "string"
                          },
                          "language": {
                            "type": "string"
                          },
                          "referer_domain": {
                            "type": "string"
                          },
                          "referer": {
                            "type": "string"
                          },
                          "is_bot": {
                            "type": "string"
                          },
                          "is_campaign_unique": {
                            "type": "string"
                          },
                          "is_tracker_unique": {
                            "type": "string"
                          },
                          "payout": {
                            "type": "string"
                          },
                          "conversion": {
                            "type": "string"
                          },
                          "conversed_at": {
                            "type": "string"
                          },
                          "conversion_status_one": {
                            "type": "string"
                          },
                          "conversion_status_two": {
                            "type": "string"
                          },
                          "external_id": {
                            "type": "string"
                          },
                          "cost": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "event_1": {
                            "type": "string"
                          },
                          "event_30": {
                            "type": "string"
                          },
                          "token_1": {
                            "type": "string"
                          },
                          "token_30": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "pageInfo": {
                      "$ref": "#/components/schemas/clicklogPageInfo"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clickbank/secret": {
      "get": {
        "tags": [
          "Clickbank"
        ],
        "summary": "Get Clickbank secret from traffic distribution.",
        "operationId": "get_v1_get_clickbank_secret",
        "responses": {
          "200": {
            "description": "Secret fetched",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/clickbankSecret"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Clickbank"
        ],
        "summary": "Change secret",
        "operationId": "post_v1_clickbank_secret",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/clickbankSecret"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Secret changed"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clickbank/postback/link": {
      "get": {
        "tags": [
          "Clickbank"
        ],
        "summary": "Get Clickbank postback link for the default domain.",
        "operationId": "get_v1_get_clickbank_postback_link",
        "responses": {
          "200": {
            "description": "Link fetched",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/clickbankLink"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/clickbank/test": {
      "post": {
        "tags": [
          "Clickbank"
        ],
        "summary": "Test clickbank request",
        "operationId": "post_v1_clickbank_test",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/clickbankTestRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Decoded",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/clickbankTestResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/columns/position/change": {
      "put": {
        "tags": [
          "Column"
        ],
        "summary": "Change columns position.",
        "description": "You must pass ALL the Column UUIDS, otherwise, position for not-passed Column will be dropped to default 9999.",
        "operationId": "put_v1_change_columns_position",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "columns": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "nullable": false
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Columns position changed successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/columns": {
      "get": {
        "tags": [
          "Column"
        ],
        "summary": "Get all Columns.",
        "operationId": "get_v1_columns",
        "responses": {
          "200": {
            "description": "Columns fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "default": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "key": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "decimals": {
                            "type": "integer",
                            "nullable": true
                          },
                          "format": {
                            "type": "string",
                            "nullable": true
                          },
                          "position": {
                            "type": "integer"
                          },
                          "viewOnPage": {
                            "properties": {
                              "uuid": {
                                "type": "string"
                              },
                              "columnUuid": {
                                "type": "string"
                              },
                              "availablePages": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "campaigns",
                                    "report",
                                    "landings",
                                    "offers",
                                    "rotations",
                                    "affiliateNetworks",
                                    "trafficSource",
                                    "trends"
                                  ]
                                }
                              },
                              "selectedPages": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "campaigns",
                                    "report",
                                    "landings",
                                    "offers",
                                    "rotations",
                                    "affiliateNetworks",
                                    "trafficSource",
                                    "trends"
                                  ]
                                }
                              }
                            },
                            "type": "object"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "custom": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "userId": {
                            "type": "integer"
                          },
                          "formula": {
                            "type": "string"
                          },
                          "decimals": {
                            "type": "integer"
                          },
                          "format": {
                            "type": "string"
                          },
                          "canModify": {
                            "type": "boolean"
                          },
                          "position": {
                            "type": "integer"
                          },
                          "viewOnPage": {
                            "properties": {
                              "uuid": {
                                "type": "string"
                              },
                              "columnUuid": {
                                "type": "string"
                              },
                              "availablePages": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "campaigns",
                                    "report",
                                    "landings",
                                    "offers",
                                    "rotations",
                                    "affiliateNetworks",
                                    "trafficSource",
                                    "trends"
                                  ]
                                }
                              },
                              "selectedPages": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "campaigns",
                                    "report",
                                    "landings",
                                    "offers",
                                    "rotations",
                                    "affiliateNetworks",
                                    "trafficSource",
                                    "trends"
                                  ]
                                }
                              }
                            },
                            "type": "object"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/columns/{page}": {
      "get": {
        "tags": [
          "Column"
        ],
        "summary": "Get all Columns for Page.",
        "operationId": "get_v1_view_on_page_columns",
        "parameters": [
          {
            "name": "page",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "report",
                "landings",
                "offers",
                "rotations",
                "affiliateNetworks",
                "trafficSource",
                "trends"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Columns fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "default": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "key": {
                            "type": "string"
                          },
                          "decimals": {
                            "type": "integer"
                          },
                          "format": {
                            "type": "string"
                          },
                          "position": {
                            "type": "integer"
                          },
                          "originalPosition": {
                            "type": "integer"
                          },
                          "viewOnPage": {
                            "properties": {
                              "uuid": {
                                "type": "string"
                              },
                              "columnUuid": {
                                "type": "string"
                              },
                              "isSelected": {
                                "type": "boolean"
                              }
                            },
                            "type": "object"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "custom": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "canModify": {
                            "type": "boolean"
                          },
                          "decimals": {
                            "type": "integer"
                          },
                          "format": {
                            "type": "string"
                          },
                          "position": {
                            "type": "integer"
                          },
                          "originalPosition": {
                            "type": "integer"
                          },
                          "viewOnPage": {
                            "properties": {
                              "uuid": {
                                "type": "string"
                              },
                              "columnUuid": {
                                "type": "string"
                              },
                              "isSelected": {
                                "type": "boolean"
                              },
                              "position": {
                                "type": "integer"
                              }
                            },
                            "type": "object"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Column"
        ],
        "summary": "Select columns visibility for Page.",
        "operationId": "put_v1_view_on_page_columns_edit",
        "parameters": [
          {
            "name": "page",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "report",
                "landings",
                "offers",
                "rotations",
                "affiliateNetworks",
                "trafficSource",
                "trends"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "columns": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "columnUuid": {
                          "type": "string",
                          "nullable": false
                        },
                        "isSelected": {
                          "type": "boolean",
                          "nullable": false
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Columns fetched successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/change_cap": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Change Conversion Cap for multiple offers",
        "operationId": "post_v1_offers_change_cap",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/conversionCapEntityMass"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Conversion Cap change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/cap/conversion/{offerId}": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Get Conversion Cap.",
        "operationId": "get_v1_get_conversion_cap",
        "parameters": [
          {
            "name": "offerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Conversion Cap fetched",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/conversionCapEntity"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Offer"
        ],
        "summary": "Edit Conversion Cap.",
        "operationId": "put_v1_edit_conversion_cap",
        "parameters": [
          {
            "name": "offerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/conversionCapEntity"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Conversion Cap edited"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Create Conversion Cap.",
        "operationId": "post_v1_create_conversion_cap",
        "parameters": [
          {
            "name": "offerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/conversionCapEntity"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Conversion Cap created"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/deactivate_conversion_cap": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Deactivate Conversion Cap for multiple offers",
        "operationId": "post_v1_offers_deactivate_conversion_cap",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "minItems": 1,
                    "uniqueItems": true,
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Conversion Cap Clear",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/cap/conversion/{id}/maximize": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Maximize the Conversion cap.",
        "operationId": "post_v1_offer_conversion_cap_maximize",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Conversion Cap maximized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/cap/conversion/{id}/reset": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Reset the current Conversion cap.",
        "operationId": "post_v1_offer_conversion_cap_reset",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Conversion Cap reset"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversions": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get Conversions with pagination, filters, permissions, and permitted columns.",
        "operationId": "get_v1_conversions",
        "parameters": [
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/from"
          },
          {
            "$ref": "#/components/parameters/to"
          },
          {
            "$ref": "#/components/parameters/direction"
          },
          {
            "$ref": "#/components/parameters/cursor"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/campaignIds"
          },
          {
            "$ref": "#/components/parameters/offerIds"
          },
          {
            "$ref": "#/components/parameters/directUrls"
          },
          {
            "$ref": "#/components/parameters/campaignOfferIds"
          },
          {
            "$ref": "#/components/parameters/geoIds"
          }
        ],
        "responses": {
          "200": {
            "description": "Conversions fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "rows": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "campaign": {
                            "type": "string"
                          },
                          "traffic_source": {
                            "type": "string"
                          },
                          "clicked_at": {
                            "type": "string"
                          },
                          "conversed_at": {
                            "type": "string"
                          },
                          "time_since_click": {
                            "type": "string"
                          },
                          "payout": {
                            "type": "string"
                          },
                          "status": {
                            "type": "string"
                          },
                          "offer": {
                            "type": "string"
                          },
                          "geo": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "pageInfo": {
                      "properties": {
                        "from": {
                          "type": "string"
                        },
                        "to": {
                          "type": "string"
                        },
                        "limit": {
                          "type": "integer"
                        },
                        "direction": {
                          "type": "string"
                        },
                        "hasPrevPage": {
                          "type": "boolean"
                        },
                        "hasNextPage": {
                          "type": "boolean"
                        }
                      },
                      "type": "object",
                      "nullable": true
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Conversions"
        ],
        "summary": "Update Conversions.",
        "description": "clickid[:payout=value:cnv_status=value:cnv_status2=value:cnv_currency=value:event(1...30)=event_value:add_event(1...30)=event_value]",
        "operationId": "put_v1_conversions_update",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "disableUpsell": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "disablePostback": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "payload": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Conversions updated successfully"
          },
          "207": {
            "description": "Some conversion updates failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Conversions"
        ],
        "summary": "Delete Conversions.",
        "operationId": "delete_v1_conversions_delete",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Conversions deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversions/columns": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get Conversions table columns.",
        "operationId": "get_v1_conversions_columns",
        "responses": {
          "200": {
            "description": "Conversions columns fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "columns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversion/{id}": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get Conversion with campaign permissions and permitted columns.",
        "operationId": "get_v1_get_conversion_id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Conversion fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "campaign": {
                      "type": "string"
                    },
                    "traffic_source": {
                      "type": "string"
                    },
                    "clicked_at": {
                      "type": "string"
                    },
                    "conversed_at": {
                      "type": "string"
                    },
                    "time_since_click": {
                      "type": "string"
                    },
                    "payout": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    },
                    "offer": {
                      "type": "string"
                    },
                    "geo": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversions/statuses/one": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get known options of Conversion Status One click's field",
        "operationId": "get_v1_conversions_status_one_options",
        "responses": {
          "200": {
            "description": "Got options",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversions/statuses/two": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get known options of Conversion Status Two click's field",
        "operationId": "get_v1_conversions_status_two_options",
        "responses": {
          "200": {
            "description": "Got options",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversions/log": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get Conversions log.",
        "operationId": "get_v1_conversions_log",
        "parameters": [
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/conversionLogTimezone"
          },
          {
            "$ref": "#/components/parameters/clickId"
          },
          {
            "$ref": "#/components/parameters/clickIds"
          },
          {
            "$ref": "#/components/parameters/urlPart"
          },
          {
            "$ref": "#/components/parameters/conversionType"
          },
          {
            "$ref": "#/components/parameters/httpCodes"
          },
          {
            "$ref": "#/components/parameters/responseType"
          },
          {
            "$ref": "#/components/parameters/conversionLogSortColumn"
          },
          {
            "$ref": "#/components/parameters/conversionLogSortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Conversions log fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "rows": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "conversion_id": {
                            "type": "string"
                          },
                          "conversed_at": {
                            "type": "string"
                          },
                          "url": {
                            "type": "string"
                          },
                          "request_data": {
                            "type": "string"
                          },
                          "ip": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          },
                          "response_http_code": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "columns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "httpCodes": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "code": {
                            "type": "integer"
                          },
                          "count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/conversions/filters": {
      "get": {
        "tags": [
          "Conversions"
        ],
        "summary": "Get Conversion filter options restricted by campaign and offer permissions.",
        "operationId": "get_v1_conversions_filters",
        "responses": {
          "200": {
            "description": "Conversions filters fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "offers": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "directUrls": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "campaignAsOffers": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "campaigns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "geo": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/custom_column/{uuid}": {
      "get": {
        "tags": [
          "Column"
        ],
        "summary": "Get Custom Column.",
        "operationId": "get_v1_custom_column_get",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Custom column fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "userId": {
                      "type": "integer"
                    },
                    "formula": {
                      "type": "string"
                    },
                    "decimals": {
                      "type": "integer"
                    },
                    "format": {
                      "type": "string"
                    },
                    "canModify": {
                      "type": "boolean"
                    },
                    "viewOnPage": {
                      "properties": {
                        "uuid": {
                          "type": "string"
                        },
                        "columnUuid": {
                          "type": "string"
                        },
                        "availablePages": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "campaigns",
                              "report",
                              "landings",
                              "offers",
                              "rotations",
                              "affiliateNetworks",
                              "trafficSource",
                              "trends"
                            ]
                          }
                        },
                        "selectedPages": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "campaigns",
                              "report",
                              "landings",
                              "offers",
                              "rotations",
                              "affiliateNetworks",
                              "trafficSource",
                              "trends"
                            ]
                          }
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object",
                  "nullable": true
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Column"
        ],
        "summary": "Edit Custom Column.",
        "operationId": "put_v1_custom_column_edit",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "formula": {
                    "type": "string",
                    "nullable": false
                  },
                  "decimals": {
                    "type": "integer",
                    "nullable": false
                  },
                  "format": {
                    "type": "string",
                    "nullable": false
                  },
                  "viewOnPageUuid": {
                    "type": "string",
                    "nullable": false
                  },
                  "selectedPages": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "campaigns",
                        "report",
                        "landings",
                        "offers",
                        "rotations",
                        "affiliateNetworks",
                        "trafficSource",
                        "trends"
                      ]
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Custom Column edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Column"
        ],
        "summary": "Create Custom Column.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "post_v1_custom_column_create",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "formula": {
                    "type": "string",
                    "nullable": false
                  },
                  "decimals": {
                    "type": "integer",
                    "nullable": false
                  },
                  "format": {
                    "type": "string",
                    "nullable": false
                  },
                  "selectedPages": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "campaigns",
                        "report",
                        "landings",
                        "offers",
                        "rotations",
                        "affiliateNetworks",
                        "trafficSource",
                        "trends"
                      ]
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Custom Column created successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Column"
        ],
        "summary": "Delete Custom Column.",
        "operationId": "delete_v1_custom_column_delete",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Custom Column deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/default_column/{uuid}": {
      "get": {
        "tags": [
          "Column"
        ],
        "summary": "Get Default Column.",
        "operationId": "get_v1_default_column_get",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Default columns fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "userId": {
                      "type": "integer"
                    },
                    "formula": {
                      "type": "string"
                    },
                    "decimals": {
                      "type": "integer"
                    },
                    "format": {
                      "type": "string"
                    },
                    "viewOnPage": {
                      "properties": {
                        "uuid": {
                          "type": "string"
                        },
                        "columnUuid": {
                          "type": "string"
                        },
                        "availablePages": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "campaigns",
                              "report",
                              "landings",
                              "offers",
                              "rotations",
                              "affiliateNetworks",
                              "trafficSource",
                              "trends"
                            ]
                          }
                        },
                        "selectedPages": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "campaigns",
                              "report",
                              "landings",
                              "offers",
                              "rotations",
                              "affiliateNetworks",
                              "trafficSource",
                              "trends"
                            ]
                          }
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Column"
        ],
        "summary": "Edit Default Column.",
        "operationId": "put_v1_default_column_edit",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "decimals": {
                    "type": "integer",
                    "nullable": true
                  },
                  "format": {
                    "type": "string",
                    "nullable": true
                  },
                  "viewOnPageUuid": {
                    "type": "string",
                    "nullable": false
                  },
                  "selectedPages": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "campaigns",
                        "report",
                        "landings",
                        "offers",
                        "rotations",
                        "affiliateNetworks",
                        "trafficSource",
                        "trends"
                      ]
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Default Column edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/default_column/reset": {
      "post": {
        "tags": [
          "Column"
        ],
        "summary": "Reset Default Columns.",
        "operationId": "post_v1_default_column_reset",
        "responses": {
          "200": {
            "description": "Default Columns reset successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/device/brand_and_model": {
      "get": {
        "tags": [
          "Device"
        ],
        "summary": "Get Brand and model list.",
        "operationId": "get_v1_device_brand_and_model",
        "parameters": [
          {
            "$ref": "#/components/parameters/searchPart"
          }
        ],
        "responses": {
          "200": {
            "description": "Brand and model list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/device/browser": {
      "get": {
        "tags": [
          "Device"
        ],
        "summary": "Get Browser with versions list.",
        "operationId": "get_v1_device_browser",
        "parameters": [
          {
            "$ref": "#/components/parameters/searchPart"
          }
        ],
        "responses": {
          "200": {
            "description": "Browser list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/device/operating_system": {
      "get": {
        "tags": [
          "Device"
        ],
        "summary": "Get OS with versions list.",
        "operationId": "get_v1_device_os",
        "parameters": [
          {
            "$ref": "#/components/parameters/searchPart"
          }
        ],
        "responses": {
          "200": {
            "description": "OS list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/device/resolution": {
      "get": {
        "tags": [
          "Device"
        ],
        "summary": "Get Resolution list.",
        "operationId": "get_v1_device_resolution",
        "parameters": [
          {
            "$ref": "#/components/parameters/searchPart"
          }
        ],
        "responses": {
          "200": {
            "description": "Resolution list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/device/type": {
      "get": {
        "tags": [
          "Device"
        ],
        "summary": "Get device types.",
        "operationId": "get_v1_device_type",
        "responses": {
          "200": {
            "description": "Type list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/change_group": {
      "post": {
        "tags": [
          "Domain"
        ],
        "summary": "Change Group for multiple Domains.",
        "operationId": "post_v1_domain_change_group",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Domain Group changed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/index_page/{id}": {
      "put": {
        "tags": [
          "Domain"
        ],
        "summary": "Change index page for Domain.",
        "operationId": "put_v1_domain_index_page_update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "indexPage": {
                    "description": "Sent campaign ID or blank_page",
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Change successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domains/check": {
      "post": {
        "tags": [
          "Domain"
        ],
        "summary": "Check all domain certificates.",
        "operationId": "post_v1_domains_check_post",
        "responses": {
          "200": {
            "description": "Domain certificates checked"
          },
          "202": {
            "description": "Domain certificate check started"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "409": {
            "description": "Domain certificate check already running"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/{id}/check": {
      "get": {
        "tags": [
          "Domain"
        ],
        "summary": "Check Domain certificate.",
        "operationId": "get_v1_domains_certificate_check",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Domain view fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "domain": {
                      "type": "string"
                    },
                    "createdAt": {
                      "type": "string",
                      "nullable": false
                    },
                    "indexPage": {
                      "type": "string",
                      "enum": [
                        "404_page",
                        "blank_page",
                        "campaign"
                      ],
                      "nullable": false
                    },
                    "error": {
                      "type": "string",
                      "nullable": false
                    },
                    "isSsl": {
                      "type": "boolean"
                    },
                    "isDefault": {
                      "type": "boolean"
                    },
                    "campaignsCount": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/{id}": {
      "put": {
        "tags": [
          "Domain"
        ],
        "summary": "Edit Domain.",
        "operationId": "put_v1_domain_update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "host": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Domain edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Domain"
        ],
        "summary": "Create Domain.",
        "description": "id: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "post_v1_domain_create",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "host": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Domain created successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Domain"
        ],
        "summary": "Delete Domain.",
        "operationId": "delete_v1_domain_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Domain deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domains/check/status": {
      "get": {
        "tags": [
          "Domain"
        ],
        "summary": "Get all domain certificate check status.",
        "operationId": "get_v1_domains_check_status_get",
        "responses": {
          "200": {
            "description": "Domain certificate check status fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "running",
                        "finished"
                      ]
                    },
                    "checked": {
                      "type": "integer"
                    },
                    "total": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/list/filtered": {
      "get": {
        "tags": [
          "Domain"
        ],
        "summary": "Get Domain list filtered.",
        "operationId": "get_v1_domain_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/host"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Domains fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "host": {
                        "type": "string"
                      },
                      "isBanned": {
                        "type": "boolean"
                      },
                      "expiresAt": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domains": {
      "get": {
        "tags": [
          "Domain"
        ],
        "summary": "Get Domains with note flags restricted by permissions.",
        "operationId": "get_v1_domains_get",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          }
        ],
        "responses": {
          "200": {
            "description": "Domains fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "domain": {
                        "type": "string"
                      },
                      "createdAt": {
                        "type": "string",
                        "nullable": false
                      },
                      "expiresAt": {
                        "type": "string",
                        "nullable": false
                      },
                      "indexPage": {
                        "description": "Get campaign ID or blank_page",
                        "type": "string",
                        "nullable": false
                      },
                      "campaignName": {
                        "description": "Get campaign name when index page exists campaign id",
                        "type": "string",
                        "nullable": false
                      },
                      "isSsl": {
                        "type": "boolean"
                      },
                      "certificateError": {
                        "type": "string",
                        "nullable": false
                      },
                      "checkError": {
                        "type": "string",
                        "nullable": false
                      },
                      "isDefault": {
                        "type": "boolean"
                      },
                      "isBanned": {
                        "type": "boolean"
                      },
                      "campaignsCount": {
                        "type": "integer"
                      },
                      "isNoted": {
                        "type": "boolean"
                      },
                      "groupId": {
                        "type": "string",
                        "nullable": true
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/mode": {
      "get": {
        "tags": [
          "Domain"
        ],
        "summary": "Get Domains signature mode.",
        "operationId": "get_v1_domains_mode",
        "responses": {
          "200": {
            "description": "Domains signature mode fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "mode": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/default/{id}": {
      "put": {
        "tags": [
          "Domain"
        ],
        "summary": "Make Default Domain.",
        "operationId": "put_v1_domain_default_update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Make Default successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/safebrowse/api_key": {
      "get": {
        "tags": [
          "Domain"
        ],
        "summary": "Get API key",
        "operationId": "get_v1_get_safebrowse_api_key",
        "responses": {
          "200": {
            "description": "Secret fetched",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/safebrowseApiKey"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "Internal error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/safebrowseError"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Domain"
        ],
        "summary": "Change API key",
        "operationId": "post_v1_safebrowse_api_key",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/safebrowseApiKey"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "API key changed"
          },
          "400": {
            "description": "API key is invalid or quota exceeded",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/safebrowseError"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "Internal error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/safebrowseError"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/safebrowse/check": {
      "post": {
        "tags": [
          "Domain"
        ],
        "summary": "Check all the domains for a ban",
        "operationId": "post_v1_safebrowse_check",
        "responses": {
          "200": {
            "description": "Check successful"
          },
          "400": {
            "description": "Invalid API key or quota exceeded"
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/domain/safebrowse/test": {
      "post": {
        "tags": [
          "Domain"
        ],
        "summary": "Test current API key",
        "operationId": "post_v1_safebrowse_test",
        "responses": {
          "200": {
            "description": "API key is valid"
          },
          "400": {
            "description": "Invalid API key or quota exceeded"
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/access": {
      "get": {
        "tags": [
          "Identity"
        ],
        "summary": "Check if user has access to files.",
        "operationId": "get_v1_check_user_has_files_access",
        "responses": {
          "200": {
            "description": "Returns information about access to files",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "hasAccess": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "User"
        ],
        "summary": "Set user's access to feature.",
        "operationId": "post_v1_set_user_files_access",
        "responses": {
          "200": {
            "description": "User feature access denied successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/copy": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Copy file from sourcePath to destinationPath.",
        "operationId": "post_v1_copy_file_or_directory",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "sourcePath": {
                    "description": "Absolute source path without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  },
                  "destinationPath": {
                    "description": "Absolute destination path without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "File or directory copied"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          },
          "409": {
            "description": "File already exists"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/directory": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Create directory.",
        "operationId": "post_v1_create_directory",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "path": {
                    "description": "Absolute path of a new directory without /landers prefix, e.g. use /foo/bar for /landers/foo/bar",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Directory created"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          },
          "409": {
            "description": "Directory already exists"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/file": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Create text file.",
        "operationId": "post_v1_create_file",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "path": {
                    "description": "Absolute path of a new file without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  },
                  "content": {
                    "description": "Text content of a new file",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "File created"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          },
          "409": {
            "description": "File already exists"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/delete": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Delete file or directory.",
        "operationId": "post_v1_delete_file_or_directory",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "path": {
                    "description": "Absolute path of file or directory to delete without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "File or directory deleted"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/download": {
      "get": {
        "tags": [
          "Files"
        ],
        "summary": "Download file.",
        "operationId": "get_v1_download_file",
        "parameters": [
          {
            "name": "path",
            "in": "query",
            "description": "Absolute path of a file to download without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "File found"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/download/zip": {
      "get": {
        "tags": [
          "Files"
        ],
        "summary": "Download directory as zip.",
        "operationId": "get_v1_download_zipped_directory",
        "parameters": [
          {
            "name": "path",
            "in": "query",
            "description": "Absolute path of a directory to download as zip without /landers prefix, e.g. use /foo/bar for /landers/foo/bar",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Directory found"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/file/edit": {
      "patch": {
        "tags": [
          "Files"
        ],
        "summary": "Edit text file content.",
        "operationId": "patch_v1_edit_text_file_content",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "path": {
                    "description": "Absolute path of a file without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  },
                  "content": {
                    "description": "New text content of a file",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "File content edited"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/list": {
      "get": {
        "tags": [
          "Files"
        ],
        "summary": "Get files and directories.",
        "operationId": "get_v1_get_files_and_directories",
        "parameters": [
          {
            "name": "path",
            "in": "query",
            "description": "Absolute path of a directory to get it's files and directories without /landers prefix, e.g. use /foo/bar for /landers/foo/bar",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter files and directories by name",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sortingField",
            "in": "query",
            "description": "Field to order by it",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "size",
                "modifiedAt",
                "accessedAt"
              ]
            }
          },
          {
            "name": "sortingType",
            "in": "query",
            "description": "Ordering direction",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Files and directories are found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "basename": {
                        "type": "string",
                        "nullable": false
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "directory",
                          "file"
                        ],
                        "nullable": false
                      },
                      "size": {
                        "description": "Size of file in bytes",
                        "type": "integer",
                        "nullable": false
                      },
                      "updatedAt": {
                        "type": "string",
                        "nullable": false
                      },
                      "accessedAt": {
                        "type": "string",
                        "nullable": false
                      },
                      "landing": {
                        "description": "Information about associated landing",
                        "properties": {
                          "id": {
                            "type": "integer",
                            "nullable": false
                          },
                          "name": {
                            "type": "string",
                            "nullable": false
                          }
                        },
                        "type": "object",
                        "nullable": true
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/content": {
      "get": {
        "tags": [
          "Files"
        ],
        "summary": "Get text file content.",
        "operationId": "get_v1_get_text_file_content",
        "parameters": [
          {
            "name": "path",
            "in": "query",
            "description": "Absolute path of a file to get it's text content without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Text file content returned",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "content": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/move": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Move file or directory from sourcePath to destinationPath.",
        "operationId": "post_v1_move_file_or_directory",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "sourcePath": {
                    "description": "Absolute source path without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  },
                  "destinationPath": {
                    "description": "Absolute destination path without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "File moved"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          },
          "409": {
            "description": "File already exists"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/upload": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Upload file.",
        "operationId": "post_v1_upload_file",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "file": {
                    "description": "File to upload",
                    "type": "string",
                    "format": "binary"
                  },
                  "path": {
                    "description": "Destination path without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "File uploaded"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          },
          "409": {
            "description": "File already exists"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/files/upload/force": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Upload file with rewriting existing file.",
        "operationId": "post_v1_upload_file_force",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "file": {
                    "description": "File to upload",
                    "type": "string",
                    "format": "binary"
                  },
                  "path": {
                    "description": "Destination path without /landers prefix, e.g. use /foo/bar/index.html for /landers/foo/bar/index.html",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "File uploaded"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Location not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/geo/city": {
      "get": {
        "tags": [
          "Geo"
        ],
        "summary": "Get City list filtered.",
        "operationId": "get_v1_geo_city",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          }
        ],
        "responses": {
          "200": {
            "description": "Cities fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/geo/continent": {
      "get": {
        "tags": [
          "Geo"
        ],
        "summary": "Get Continent list filtered.",
        "operationId": "get_v1_geo_continent",
        "responses": {
          "200": {
            "description": "Continents fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/geo/country": {
      "get": {
        "tags": [
          "Geo"
        ],
        "summary": "Get Country list filtered.",
        "operationId": "get_v1_geo_country",
        "responses": {
          "200": {
            "description": "Countries fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "fullname": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/geo/region": {
      "get": {
        "tags": [
          "Geo"
        ],
        "summary": "Get Region list filtered.",
        "operationId": "get_v1_geo_region",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          }
        ],
        "responses": {
          "200": {
            "description": "Regions fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/geo/state": {
      "get": {
        "tags": [
          "Geo"
        ],
        "summary": "Get State list filtered.",
        "operationId": "get_v1_geo_state",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          }
        ],
        "responses": {
          "200": {
            "description": "States fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/group/{subject}/{uuid}": {
      "put": {
        "tags": [
          "Group"
        ],
        "summary": "Change name for Group.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "put_v1_group_change_name",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "landings",
                "offers",
                "rotations",
                "triggers",
                "domains"
              ]
            }
          },
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Group name changed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Group"
        ],
        "summary": "Create Group.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "post_v1_group_create",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "landings",
                "offers",
                "rotations",
                "triggers",
                "domains"
              ]
            }
          },
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Group created successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Group"
        ],
        "summary": "Delete Group.",
        "operationId": "delete_v1_group_delete",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "landings",
                "offers",
                "rotations",
                "triggers",
                "domains"
              ]
            }
          },
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Group deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/groups/{subject}": {
      "get": {
        "tags": [
          "Group"
        ],
        "summary": "Get groups by subject.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "get_v1_groups_by_subject",
        "parameters": [
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "landings",
                "offers",
                "rotations",
                "triggers",
                "domains"
              ]
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "200": {
            "description": "Groups fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "uuid": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/groups": {
      "get": {
        "tags": [
          "Group"
        ],
        "summary": "Get all groups.",
        "operationId": "get_v1_groups",
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "200": {
            "description": "Groups fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "campaigns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "offers": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "landings": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "rotations": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "domains": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "count": {
                            "type": "integer"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/groups/{subject}/filtered": {
      "get": {
        "tags": [
          "Group"
        ],
        "summary": "Get groups list by filter.",
        "operationId": "get_v1_groups_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "name": "subject",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "campaigns",
                "landings",
                "offers",
                "rotations",
                "triggers",
                "domains"
              ]
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "200": {
            "description": "Groups fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "uuid": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/isp/connections": {
      "get": {
        "tags": [
          "ISP"
        ],
        "summary": "Get list of connections",
        "operationId": "get_v1_isp_connections",
        "responses": {
          "200": {
            "description": "Connections fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/isp/names": {
      "get": {
        "tags": [
          "ISP"
        ],
        "summary": "Get filtered list of internet service provider names",
        "operationId": "get_v1_names",
        "parameters": [
          {
            "$ref": "#/components/parameters/ISPname"
          }
        ],
        "responses": {
          "200": {
            "description": "ISP names fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/isp/organizations": {
      "get": {
        "tags": [
          "ISP"
        ],
        "summary": "Get filtered list of organization names",
        "operationId": "get_v1_isp_organizations",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          }
        ],
        "responses": {
          "200": {
            "description": "Organization names fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/change_domain": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Change Domain for multiple Landings",
        "operationId": "post_v1_landings_change_domain",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "domain": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landings Domain change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/change_group": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Change Group for multiple Landings",
        "operationId": "post_v1_landings_change_group",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landings Domain change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/change_language": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Change Language for multiple Landings",
        "operationId": "post_v1_landings_change_language",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "languageCode": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landings Language change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/{id}/clone": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Clone landing.",
        "operationId": "get_v1_landing_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Landing fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "integrated",
                        "not_integrated"
                      ],
                      "nullable": false
                    },
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "location": {
                      "type": "string",
                      "nullable": false
                    },
                    "groupUuid": {
                      "type": "string",
                      "nullable": false
                    },
                    "languageCode": {
                      "type": "string",
                      "nullable": true
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/{id}/files/clone": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Clone landing files.",
        "operationId": "post_v1_landing_files_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Landing files cloned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "location": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/integrated": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Create integrated landing.",
        "operationId": "post_v1_landing_integrated_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "path": {
                    "type": "string",
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "languageCode": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Integrated landing created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/not_integrated": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Create not integrated landing.",
        "operationId": "post_v1_landing_not_integrated_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "url": {
                    "type": "string",
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "languageCode": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Not integrated landing created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/{id}": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Get Landing by ID with access validation.",
        "operationId": "get_v1_landing_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Landing fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string",
                      "nullable": false
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "integrated",
                        "not_integrated"
                      ],
                      "nullable": false
                    },
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "location": {
                      "type": "string",
                      "nullable": false
                    },
                    "groupUuid": {
                      "type": "string",
                      "nullable": false
                    },
                    "languageCode": {
                      "type": "string",
                      "nullable": true
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Landing"
        ],
        "summary": "Edit landing.",
        "operationId": "put_v1_landing_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "integrated",
                      "not_integrated"
                    ],
                    "nullable": false
                  },
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "location": {
                    "description": "URL or relative path to the landing page. Examples: http://example.com, landers/23dw2323d/index.html, https://another-example.com",
                    "type": "string",
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "languageCode": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Landing"
        ],
        "summary": "Delete landing.",
        "operationId": "delete_v1_landing_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "isDeleteFiles": {
                    "type": "boolean",
                    "default": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Landing"
        ],
        "summary": "Restore landing page.",
        "operationId": "patch_v1_landing_restore",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Landing restored successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/{id}/file": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Get landing file content.",
        "operationId": "get_v1_landing_file",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Landing file content fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "content": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Landing"
        ],
        "summary": "Edit landing file.",
        "operationId": "put_v1_landing_file_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "content": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing file edit successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "landing_file": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/list/filtered": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Get Landing list filtered.",
        "operationId": "get_v1_landing_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/groupUuid"
          },
          {
            "$ref": "#/components/parameters/language"
          },
          {
            "$ref": "#/components/parameters/excludeIdsRanges"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "name": "sortColumn",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "id",
                "name",
                "groupUuid",
                "languageCode"
              ]
            }
          },
          {
            "name": "sortType",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Landings data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      },
                      "groupUuid": {
                        "type": "string",
                        "nullable": true
                      },
                      "languageCode": {
                        "type": "string",
                        "nullable": false
                      },
                      "location": {
                        "type": "string",
                        "nullable": false
                      },
                      "isDomainBanned": {
                        "type": "boolean"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing_protect": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Get LP Protect code.",
        "operationId": "get_v1_landing_protect_get",
        "responses": {
          "200": {
            "description": "Landing protect code generated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "lp_protect": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/list/by_location": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Get landings by location.",
        "operationId": "get_v1_landings_by_location",
        "parameters": [
          {
            "name": "startLocation",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Landings by location fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/language/list": {
      "get": {
        "tags": [
          "Landing"
        ],
        "summary": "Get Languages with landings list.",
        "operationId": "get_v1_landing_language_list",
        "responses": {
          "200": {
            "description": "Languages fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "landingsCount": {
                        "type": "integer"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/import": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Import not integrated landings.",
        "description": "Format: Name;Url;LanguageCode;[GroupName].",
        "operationId": "post_v1_landing_not_integrated_import",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "landings": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Not integrated landing imported successfully"
          },
          "202": {
            "description": "Some landings are not imported. Response with errors described as an example.",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "errors": {
                      "properties": {
                        "1": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "3": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/modify/{id}": {
      "patch": {
        "tags": [
          "Landing"
        ],
        "summary": "Partially update landing.",
        "description": "to clear groupUuid or languageCode use 'none', 'erase' or 'empty'.",
        "operationId": "patch_v1_landing_modify",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": true
                  },
                  "location": {
                    "description": "URL or relative path to the landing page. Examples:     http://example.com, landers/23dw2323d/index.html",
                    "type": "string",
                    "nullable": true
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "languageCode": {
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/{id}/rename": {
      "put": {
        "tags": [
          "Landing"
        ],
        "summary": "Rename landing.",
        "operationId": "put_v1_landing_rename",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing renamed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/landing/upload": {
      "post": {
        "tags": [
          "Landing"
        ],
        "summary": "Upload landing files.",
        "operationId": "post_v1_landing_upload",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "properties": {
                  "file": {
                    "description": "Landing file. Allowed MIME types: text/html, text/x-php, application/zip, application/octet-stream",
                    "type": "string",
                    "format": "binary"
                  },
                  "landingName": {
                    "description": "Optional landing name used to form the directory name where the archive will be extracted",
                    "type": "string",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Landing upload successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "landing_file": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/license/expires_at": {
      "get": {
        "tags": [
          "License"
        ],
        "summary": "Get expiration date.",
        "operationId": "get_v1_license_expiration_date",
        "responses": {
          "200": {
            "description": "Returns expiration date",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "expires_at": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "License errors"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/license/tracker_id": {
      "get": {
        "tags": [
          "License"
        ],
        "summary": "Get Tracker ID.",
        "operationId": "get_v1_license_tracker_id",
        "responses": {
          "200": {
            "description": "Returns Tracker ID",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "trackerId": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "License errors"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/magic_checker/add/{campaignId}": {
      "put": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Add Magic Checker To Campaign.",
        "operationId": "put_v1_magic_checker_add_campaign",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "binomMagicCheckerId": {
                    "type": "integer",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Magic Checker added successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/magic_checker": {
      "post": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Create Magic Checker.",
        "operationId": "post_v1_magic_checker_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "magicCheckerId": {
                    "type": "string",
                    "nullable": false
                  },
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Magic Checker created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/magic_checker/{binomMagicCheckerId}": {
      "get": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Get Magic Checker data.",
        "operationId": "get_v1_magic_checker_get",
        "parameters": [
          {
            "name": "binomMagicCheckerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the magic checker data",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "binomMagicCheckerId": {
                      "type": "integer",
                      "nullable": false
                    },
                    "magicCheckerId": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Edit Magic Checker.",
        "operationId": "put_v1_magic_checker_edit",
        "parameters": [
          {
            "name": "binomMagicCheckerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "magicCheckerId": {
                    "type": "string",
                    "nullable": false
                  },
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Magic Checker edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Delete Magic Checker.",
        "operationId": "delete_v1_magic_checker_delete",
        "parameters": [
          {
            "name": "binomMagicCheckerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Magic Checker deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/magic_checker/campaign/{campaignId}": {
      "get": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Get Magic Checker Data For Campaign.",
        "operationId": "get_v1_magic_checker_campaign_get",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the magic checker data for campaign",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "isEnabled": {
                      "type": "boolean",
                      "nullable": false
                    },
                    "binomMagicCheckerId": {
                      "type": "integer",
                      "nullable": true
                    },
                    "magicCheckerId": {
                      "type": "string",
                      "nullable": true
                    },
                    "name": {
                      "type": "string",
                      "nullable": true
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Remove Magic Checker From Campaign.",
        "operationId": "delete_v1_magic_checker_remove_campaign",
        "parameters": [
          {
            "name": "campaignId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Magic Checker from campaign remove successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/magic_checker/list/filtered": {
      "get": {
        "tags": [
          "MagicChecker"
        ],
        "summary": "Get Magic Checker list filtered.",
        "operationId": "get_v1_magic_checker_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Magic Checker list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "binom_magic_checker_id": {
                        "type": "integer",
                        "nullable": false
                      },
                      "magic_checker_id": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/task/{uuid}": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get task info by UUID",
        "operationId": "get_v1_migrator_get_task",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "500": {
            "description": "Migrator does not response"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Migrator"
        ],
        "summary": "Delete task info by UUID",
        "operationId": "delete_v1_migrator_task_delete",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "500": {
            "description": "Migrator does not response"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/last": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get last task info",
        "operationId": "get_v1_migrator_get_task_last",
        "responses": {
          "500": {
            "description": "Migrator does not response"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/task/{uuid}/jobs/file-transfer": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get file transfer jobs by task ID",
        "operationId": "get_v1_migrator_get_task_file_transfer_jobs",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Jobs returned successfully"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Task not found"
          },
          "500": {
            "description": "Migrator does not response"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/keitaro/migrate": {
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Migrate from Keitaro",
        "operationId": "post_v1_migrator_keitaro_migrate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "url": {
                    "description": "URL of your Keitaro tracker",
                    "type": "string"
                  },
                  "apiKey": {
                    "description": "API key of your admin account in Keitaro",
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Migration started",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "500": {
            "description": "Migrator does not response"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/migrate": {
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Migrate Binom v1 data",
        "operationId": "post_v1_migrator_migrate",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "file": {
                    "description": "Export File .tar",
                    "type": "string",
                    "format": "file"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Migration started",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "500": {
            "description": "Migrator does not response"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/ping": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get migrator service status",
        "operationId": "get_v1_migrator_ping",
        "responses": {
          "200": {
            "description": "Migrator works",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Migrator does not response"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/keitaro/transfer-files": {
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Transfer files from Keitaro using the last migration task\nIt resumes the finished migration task",
        "description": "Use it if files transferring during migration haven't completed for some reason",
        "operationId": "post_v1_migrator_keitaro_transfer-files",
        "responses": {
          "200": {
            "description": "Files transferring started",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "500": {
            "description": "Migrator does not response"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/restore/cancel": {
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Cancel current restore process.",
        "operationId": "post_v1_migrator_v2_get_restore_cancel",
        "responses": {
          "200": {
            "description": "Cancel triggered"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/backup/settings": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get auto backup settings",
        "operationId": "get_v1_migrator_v2_get_backup_settings",
        "responses": {
          "200": {
            "description": "Settings fetched",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "is_active": {
                      "type": "boolean",
                      "nullable": false
                    },
                    "interval": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Change auto backup settings. Interval counts in seconds.",
        "operationId": "post_v1_migrator_v2_change_backup_settings",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "is_active": {
                    "type": "boolean",
                    "nullable": false
                  },
                  "interval": {
                    "type": "integer",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings changed"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/export/jobs": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get all export jobs",
        "operationId": "get_v1_migrator_v2_fetch_jobs",
        "responses": {
          "200": {
            "description": "States fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "pending",
                          "in_progress",
                          "completed",
                          "failed"
                        ],
                        "nullable": false
                      },
                      "created_at": {
                        "type": "string",
                        "nullable": false
                      },
                      "completed_at": {
                        "type": "string",
                        "nullable": false
                      },
                      "reason": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Schedule a job to make an export",
        "operationId": "post_v1_migrator_v2_create_job",
        "responses": {
          "202": {
            "description": "Job created"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/export/jobs/{id}": {
      "delete": {
        "tags": [
          "Migrator"
        ],
        "summary": "Delete or cancel the job (Export file also will be deleted)",
        "operationId": "delete_v1_migrator_v2_delete_job",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Job deleted"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/export/dumps/{id}": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Download a dump by job ID",
        "operationId": "get_v1_migrator_v2_download_dump",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Dump downloaded successfully"
          },
          "404": {
            "description": "Dump does not exist"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/restore/status": {
      "get": {
        "tags": [
          "Migrator"
        ],
        "summary": "Get last restore status",
        "operationId": "get_v1_migrator_v2_get_restore_status",
        "responses": {
          "200": {
            "description": "Status fetched",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "is_running": {
                      "type": "boolean",
                      "nullable": false
                    },
                    "started_at": {
                      "type": "string",
                      "nullable": false
                    },
                    "finished_at": {
                      "type": "string",
                      "nullable": false
                    },
                    "error_message": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/migrator/v2/restore": {
      "post": {
        "tags": [
          "Migrator"
        ],
        "summary": "Restore Binom v2 data",
        "operationId": "post_v1_migrator_v2_get_restore",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "file": {
                    "description": "Export File .sql.gz",
                    "type": "file",
                    "format": "file"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Restore started"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/monitor/background_tasks": {
      "get": {
        "tags": [
          "Monitor"
        ],
        "summary": "Get background tasks",
        "operationId": "get_v1_monitor_get_background_tasks",
        "parameters": [
          {
            "name": "types[]",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "delete_clicks_in_campaign",
                  "update_cost",
                  "auto_clearings",
                  "clicklog_csv_archive",
                  "conversions_csv_archive"
                ]
              }
            }
          },
          {
            "name": "statuses[]",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "in_progress",
                  "pending",
                  "finished",
                  "error"
                ]
              }
            }
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          }
        ],
        "responses": {
          "200": {
            "description": "Returns list of pending and finished background tasks",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "delete_clicks_in_campaign",
                          "update_cost",
                          "auto_clearings",
                          "clicklog_csv_archive",
                          "conversions_csv_archive"
                        ]
                      },
                      "subjectIds": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "progress": {
                        "type": "number",
                        "format": "float",
                        "nullable": true
                      },
                      "startedAt": {
                        "type": "string"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "pending",
                          "finished",
                          "error"
                        ]
                      },
                      "errorMessage": {
                        "type": "string",
                        "nullable": true
                      },
                      "canModify": {
                        "type": "boolean",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/monitor": {
      "get": {
        "tags": [
          "Monitor"
        ],
        "summary": "Get Monitor Result.",
        "operationId": "get_v1_monitor_get",
        "responses": {
          "200": {
            "description": "Returns the Monitor",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "user": {
                      "type": "string"
                    },
                    "clicks": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "time": {
                            "type": "string"
                          },
                          "count": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/note/{uuid}": {
      "put": {
        "tags": [
          "Note"
        ],
        "summary": "Edit Note.",
        "operationId": "put_v1_note_edit",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "aggregateId": {
                    "type": "integer",
                    "nullable": false
                  },
                  "subject": {
                    "type": "string",
                    "enum": [
                      "campaign",
                      "offer",
                      "landing",
                      "rotation",
                      "affiliate_network",
                      "traffic_source",
                      "domain",
                      "trigger"
                    ],
                    "nullable": false
                  },
                  "text": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Note edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Note"
        ],
        "summary": "Create Note.",
        "description": "uuid: You need generate uuid version 4 any generator.\nFor example this: https://www.uuidgenerator.net/version4\n<br> Format looks like this: <b>0acc95cc-ad7a-48e5-9bdc-c4b86de6c620</b>",
        "operationId": "post_v1_note_create",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "aggregateId": {
                    "type": "integer",
                    "nullable": false
                  },
                  "subject": {
                    "type": "string",
                    "enum": [
                      "campaign",
                      "offer",
                      "landing",
                      "rotation",
                      "affiliate_network",
                      "traffic_source",
                      "domain",
                      "trigger"
                    ],
                    "nullable": false
                  },
                  "text": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Note created successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/note/{subject}/{aggregateId}": {
      "get": {
        "tags": [
          "Note"
        ],
        "summary": "Get Note details.",
        "operationId": "get_v1_note_detail",
        "parameters": [
          {
            "$ref": "#/components/parameters/noteSubject"
          },
          {
            "name": "aggregateId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Note data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "uuid": {
                      "type": "string"
                    },
                    "text": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/note_image/{uuid}": {
      "get": {
        "tags": [
          "Note"
        ],
        "summary": "Get Note Image.",
        "operationId": "get_v1_note_image_content",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Note Image fetched successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        }
      },
      "post": {
        "tags": [
          "Note"
        ],
        "summary": "Save Note Image.",
        "operationId": "post_v1_note_image_save",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "image"
                ],
                "properties": {
                  "image": {
                    "description": "Note Image",
                    "type": "string",
                    "format": "file"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Note Image saved successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/change_affnetwork": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Change affiliate Network for multiple offers",
        "operationId": "post_v1_offers_change_affnetwork",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "affiliateNetworkId": {
                    "type": "integer",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Domain change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/change_country": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Change country for multiple offers",
        "operationId": "post_v1_offers_change_country",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "countryCode": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Country change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/change_domain": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Change Domain for multiple offers",
        "operationId": "post_v1_offers_change_domain",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "domain": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Domain change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/change_group": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Change Group for multiple offers",
        "operationId": "post_v1_offers_change_group",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offers Group change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/{id}/clone": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Clone Offer.",
        "operationId": "get_v1_offer_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "200": {
            "description": "Offer fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "offer": {
                      "properties": {
                        "name": {
                          "type": "string",
                          "nullable": false
                        },
                        "url": {
                          "type": "string",
                          "nullable": false
                        },
                        "countryCode": {
                          "type": "string",
                          "nullable": false
                        },
                        "groupUuid": {
                          "type": "string",
                          "nullable": true
                        },
                        "affiliateNetworkId": {
                          "type": "integer",
                          "nullable": true
                        },
                        "payout": {
                          "properties": {
                            "amount": {
                              "type": "number",
                              "format": "float",
                              "nullable": false
                            },
                            "currency": {
                              "type": "string",
                              "enum": [
                                "USD",
                                "EUR",
                                "GBP",
                                "RUB",
                                "CNY",
                                "PLN",
                                "JPY",
                                "UAH",
                                "CAD",
                                "BTC",
                                "IDR",
                                "INR",
                                "TRY",
                                "PHP",
                                "VND"
                              ],
                              "nullable": false
                            },
                            "isAuto": {
                              "type": "boolean",
                              "nullable": false
                            },
                            "isUpsell": {
                              "type": "boolean",
                              "nullable": false
                            }
                          },
                          "type": "object"
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Create Offer.",
        "operationId": "post_v1_offer_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "offer": {
                    "properties": {
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "url": {
                        "type": "string",
                        "nullable": false
                      },
                      "countryCode": {
                        "type": "string",
                        "nullable": true
                      },
                      "groupUuid": {
                        "type": "string",
                        "nullable": true
                      },
                      "affiliateNetworkId": {
                        "type": "integer",
                        "nullable": true
                      },
                      "amount": {
                        "type": "number",
                        "format": "float",
                        "nullable": false
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "EUR",
                          "GBP",
                          "RUB",
                          "CNY",
                          "PLN",
                          "JPY",
                          "UAH",
                          "CAD",
                          "BTC",
                          "IDR",
                          "INR",
                          "TRY",
                          "PHP",
                          "VND"
                        ],
                        "nullable": false
                      },
                      "isAuto": {
                        "type": "boolean",
                        "nullable": false
                      },
                      "isUpsell": {
                        "type": "boolean",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Offer created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/{id}": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Get Offer by ID with payout data.",
        "operationId": "get_v1_offer_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "200": {
            "description": "Offer fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "offer": {
                      "properties": {
                        "name": {
                          "type": "string",
                          "nullable": false
                        },
                        "url": {
                          "type": "string",
                          "nullable": false
                        },
                        "countryCode": {
                          "type": "string",
                          "nullable": false
                        },
                        "groupUuid": {
                          "type": "string",
                          "nullable": true
                        },
                        "affiliateNetworkId": {
                          "type": "integer",
                          "nullable": true
                        },
                        "payout": {
                          "$ref": "#/components/schemas/offerPayout"
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Offer"
        ],
        "summary": "Edit Offer.",
        "operationId": "put_v1_offer_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "offer": {
                    "properties": {
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "url": {
                        "type": "string",
                        "nullable": false
                      },
                      "countryCode": {
                        "type": "string",
                        "nullable": true
                      },
                      "groupUuid": {
                        "type": "string",
                        "nullable": true
                      },
                      "affiliateNetworkId": {
                        "type": "integer",
                        "nullable": true
                      },
                      "amount": {
                        "type": "number",
                        "format": "float",
                        "nullable": false
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "EUR",
                          "GBP",
                          "RUB",
                          "CNY",
                          "PLN",
                          "JPY",
                          "UAH",
                          "CAD",
                          "BTC",
                          "IDR",
                          "INR",
                          "TRY",
                          "PHP",
                          "VND"
                        ],
                        "nullable": false
                      },
                      "isAuto": {
                        "type": "boolean",
                        "nullable": false
                      },
                      "isUpsell": {
                        "type": "boolean",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offer edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Offer"
        ],
        "summary": "Delete Offer.",
        "operationId": "delete_v1_offer_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Offer deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Offer"
        ],
        "summary": "Restore Offer.",
        "operationId": "patch_v1_offer_restore",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Offer restored successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/affiliate_network/list": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Get Affiliate Networks with offers list.",
        "operationId": "get_v1_offer_affiliate_network_list",
        "responses": {
          "200": {
            "description": "Affiliate Network data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "offersCount": {
                        "type": "integer",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/alternative/all": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Get Alternative Offers list.",
        "operationId": "get_v1_offer_alternative_list",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/groupUuid"
          },
          {
            "$ref": "#/components/parameters/affiliateNetworkId"
          },
          {
            "$ref": "#/components/parameters/countryCode"
          },
          {
            "$ref": "#/components/parameters/excludeIdsRanges"
          },
          {
            "$ref": "#/components/parameters/offerAlternativeSortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Offers data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string"
                      },
                      "url": {
                        "type": "string",
                        "nullable": false
                      },
                      "countryCode": {
                        "type": "string",
                        "nullable": false
                      },
                      "groupUuid": {
                        "type": "string",
                        "nullable": true
                      },
                      "affiliateNetworkId": {
                        "type": "integer",
                        "nullable": true
                      },
                      "payout": {
                        "$ref": "#/components/schemas/offerPayout"
                      },
                      "conversionCaps": {
                        "properties": {
                          "isActive": {
                            "type": "boolean",
                            "nullable": false
                          },
                          "currentConversionCap": {
                            "type": "integer",
                            "nullable": false
                          },
                          "maxCap": {
                            "type": "integer",
                            "nullable": false
                          },
                          "startingFrom": {
                            "type": "string",
                            "nullable": false
                          },
                          "timezone": {
                            "type": "string",
                            "nullable": false
                          },
                          "resetFrequency": {
                            "type": "integer",
                            "nullable": false
                          },
                          "alternativeOfferId": {
                            "type": "integer",
                            "nullable": false
                          },
                          "priority": {
                            "type": "string",
                            "enum": [
                              "in_path",
                              "alternative"
                            ],
                            "nullable": false
                          }
                        },
                        "type": "object"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/country/list": {
      "get": {
        "tags": [
          "Offer"
        ],
        "summary": "Get Countries with offers list.",
        "operationId": "get_v1_offer_country_list",
        "responses": {
          "200": {
            "description": "Countries data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "name": {
                        "type": "string"
                      },
                      "code": {
                        "type": "string",
                        "nullable": false
                      },
                      "offersCount": {
                        "type": "integer",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offers/import": {
      "post": {
        "tags": [
          "Offer"
        ],
        "summary": "Import Offers.",
        "description": "Format: Name;Url;PayoutAuto(0/1);Amount;Currency;PayoutUpsell(0/1);CountryCode;[GroupName];[AffiliateNetworkId]",
        "operationId": "post_v1_offer_import",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "offers": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "All Offers imported successfully"
          },
          "202": {
            "description": "Some Offers not imported. Response with errors described as an example.",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "errors": {
                      "properties": {
                        "1": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "3": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/modify/{id}": {
      "patch": {
        "tags": [
          "Offer"
        ],
        "summary": "Partially update offer.",
        "description": "to clear groupUuid use 'none', 'erase' or 'empty'.\nto clear affiliateNetworkId use '0'.",
        "operationId": "patch_v1_offer_modify",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": true
                  },
                  "url": {
                    "type": "string",
                    "nullable": true
                  },
                  "countryCode": {
                    "type": "string",
                    "nullable": true
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "affiliateNetworkId": {
                    "type": "integer",
                    "nullable": true
                  },
                  "amount": {
                    "type": "number",
                    "format": "float",
                    "nullable": true
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "EUR",
                      "GBP",
                      "RUB",
                      "CNY",
                      "PLN",
                      "JPY",
                      "UAH",
                      "CAD",
                      "BTC",
                      "IDR",
                      "INR",
                      "TRY",
                      "PHP",
                      "VND"
                    ],
                    "nullable": true
                  },
                  "isAuto": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "isUpsell": {
                    "type": "boolean",
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offer edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/offer/{id}/rename": {
      "put": {
        "tags": [
          "Offer"
        ],
        "summary": "Rename Offer.",
        "operationId": "put_v1_offer_rename",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Offer edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/postback/rule": {
      "post": {
        "tags": [
          "Postback Processing Rules"
        ],
        "summary": "Create Postback processing rule.",
        "operationId": "post_v1_postback_processing_rule_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "weight": {
                    "type": "integer",
                    "nullable": false
                  },
                  "applyFor": {
                    "$ref": "#/components/schemas/postbackProcessingApplyFor"
                  },
                  "rules": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/postbackProcessingRule"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Postback processing rule created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/postback/rule/{uuid}": {
      "get": {
        "tags": [
          "Postback Processing Rules"
        ],
        "summary": "Get Postback processing rule.",
        "operationId": "get_v1_postback_processing_rule_get",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Postback processing rule fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string",
                      "nullable": false
                    },
                    "weight": {
                      "type": "integer",
                      "nullable": false
                    },
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "createdAt": {
                      "type": "string",
                      "nullable": false
                    },
                    "applyFor": {
                      "$ref": "#/components/schemas/postbackProcessingApplyFor"
                    },
                    "rules": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/postbackProcessingRule"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Postback Processing Rules"
        ],
        "summary": "Edit Postback processing rule.",
        "operationId": "put_v1_postback_processing_rule_edit",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "weight": {
                    "type": "integer",
                    "nullable": false
                  },
                  "applyFor": {
                    "$ref": "#/components/schemas/postbackProcessingApplyFor"
                  },
                  "rules": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/postbackProcessingRule"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Postback processing rule edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Postback Processing Rules"
        ],
        "summary": "Delete Postback processing rule.",
        "operationId": "delete_v1_postback_processing_rule_delete",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Postback processing rule deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/postback/rules": {
      "get": {
        "tags": [
          "Postback Processing Rules"
        ],
        "summary": "Get all Postback processing rules.",
        "operationId": "get_v1_postback_processing_rule_get_all",
        "responses": {
          "200": {
            "description": "Postback processing rules fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "weight": {
                        "type": "integer",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "createdAt": {
                        "type": "string",
                        "nullable": false
                      },
                      "applyFor": {
                        "$ref": "#/components/schemas/postbackProcessingApplyFor"
                      },
                      "rules": {
                        "type": "array",
                        "items": {
                          "$ref": "#/components/schemas/postbackProcessingRule"
                        },
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/postback/rule/condition/fields": {
      "get": {
        "tags": [
          "Postback Processing Rules"
        ],
        "summary": "Get available Condition Fields.",
        "operationId": "get_v1_postback_processing_rule_condition_fields",
        "responses": {
          "200": {
            "description": "Condition fields fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "default": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "url": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/{id}/clone": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Clone Rotation.",
        "operationId": "get_v1_rotation_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "200": {
            "description": "Rotation fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "groupUuid": {
                      "type": "string"
                    },
                    "defaultPaths": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/rotationDefaultPathGet"
                      },
                      "nullable": false
                    },
                    "rules": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/rotationRuleGet"
                      },
                      "nullable": false
                    },
                    "campaigns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation": {
      "post": {
        "tags": [
          "Rotation"
        ],
        "summary": "Create Rotation.",
        "operationId": "post_v1_rotation_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "defaultPaths": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/rotationDefaultPathCreate"
                    },
                    "nullable": false
                  },
                  "rules": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/rotationRuleCreate"
                    },
                    "nullable": false
                  },
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Rotation created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/{id}": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get Rotation with campaign usage and banned-domain flags.",
        "operationId": "get_v1_rotation_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Rotation fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "groupUuid": {
                      "type": "string",
                      "nullable": true
                    },
                    "defaultPaths": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/rotationDefaultPathGet"
                      },
                      "nullable": false
                    },
                    "rules": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/rotationRuleGet"
                      },
                      "nullable": false
                    },
                    "campaigns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "integer"
                          },
                          "name": {
                            "type": "string"
                          },
                          "isDomainBanned": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Edit Rotation.",
        "operationId": "put_v1_rotation_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "groupUuid": {
                    "type": "string",
                    "nullable": true
                  },
                  "defaultPaths": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/rotationDefaultPath"
                    },
                    "nullable": false
                  },
                  "rules": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/rotationRule"
                    },
                    "nullable": false
                  },
                  "campaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": true
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Rotation edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Rotation"
        ],
        "summary": "Delete Rotation.",
        "operationId": "delete_v1_rotation_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Rotation deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "409": {
            "description": "Deletion conflict with campaigns",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "errors": {
                      "properties": {
                        "detail": {
                          "properties": {
                            "campaigns": {
                              "type": "array",
                              "items": {
                                "properties": {
                                  "id": {
                                    "type": "integer"
                                  },
                                  "name": {
                                    "type": "string"
                                  }
                                },
                                "type": "object"
                              }
                            }
                          },
                          "type": "object"
                        },
                        "message": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Rotation"
        ],
        "summary": "Restore Rotation.",
        "operationId": "patch_v1_rotation_restore",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Rotation restored successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation_custom_rules/{trafficSourceId}": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get available Custom Rotation Rules with Traffic Source tokens.",
        "operationId": "get_v1_custom_rotation_rules_get",
        "parameters": [
          {
            "name": "trafficSourceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Rotation Rules fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/device/brand_model/{term}": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get device brand and model suggestions for Rotation rules.",
        "operationId": "get_v1_get_rotation_device_brand_model",
        "parameters": [
          {
            "name": "term",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Device brand and model fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/device/browser/{term}": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get device browser and version suggestions for Rotation rules.",
        "operationId": "get_v1_get_rotation_device_browser",
        "parameters": [
          {
            "name": "term",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Device browser fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/device/os/{term}": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get device OS and version suggestions for Rotation rules.",
        "operationId": "get_v1_get_rotation_device_os",
        "parameters": [
          {
            "name": "term",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Device os fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/device/resolution/{term}": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get device resolution suggestions for Rotation rules.",
        "operationId": "get_v1_get_rotation_device_resolution",
        "parameters": [
          {
            "name": "term",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Device resolution fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/device/type": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get device types for Rotation rules.",
        "operationId": "get_v1_get_rotation_device_type",
        "responses": {
          "200": {
            "description": "Device type fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/list/filtered": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get Rotation list filtered.",
        "operationId": "get_v1_rotation_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/groupUuid"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/excludeIdsRanges"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Rotations fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "groupId": {
                        "type": "string",
                        "nullable": true
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation_rules": {
      "get": {
        "tags": [
          "Rotation"
        ],
        "summary": "Get available Rotation Rules.",
        "operationId": "get_v1_rotation_rules_get",
        "responses": {
          "200": {
            "description": "Rotation Rules fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/landing/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause landing in rotations.",
        "operationId": "put_v1_rotation_landing_pause",
        "responses": {
          "200": {
            "description": "Landing in rotations paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/offer/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause rotation path offer.",
        "operationId": "put_v1_rotation_offer_pause",
        "responses": {
          "200": {
            "description": "Path paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/path/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause path in rotations.",
        "operationId": "put_v1_rotation_path_pause",
        "responses": {
          "200": {
            "description": "Path in rotations paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/rule/pause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Pause rule in rotations.",
        "operationId": "put_v1_rotation_rule_pause",
        "responses": {
          "200": {
            "description": "Rule in rotations paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/landing/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause landing in rotations.",
        "operationId": "put_v1_rotation_landing_unpause",
        "responses": {
          "200": {
            "description": "Landing in rotations unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/offer/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause rotation path offer.",
        "operationId": "put_v1_rotation_offer_unpause",
        "responses": {
          "200": {
            "description": "Path offer unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/path/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause path in rotations.",
        "operationId": "put_v1_rotation_path_unpause",
        "responses": {
          "200": {
            "description": "Path in rotations unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/rotation/rule/unpause": {
      "put": {
        "tags": [
          "Rotation"
        ],
        "summary": "Unpause rule in rotations.",
        "operationId": "put_v1_rotation_rule_unpause",
        "responses": {
          "200": {
            "description": "Rule in rotations unpaused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/lp/protect": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get lp protect code",
        "operationId": "get_v1_settings_lp_protect",
        "responses": {
          "200": {
            "description": "Get lp protect code",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "ttl": {
                      "type": "integer"
                    },
                    "simple": {
                      "type": "string"
                    },
                    "safe": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit Settings Info.",
        "operationId": "post_v1_settings_change_lp_protect",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ttl": {
                    "type": "integer"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings info edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/clearings": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get Settings Clearings.",
        "operationId": "get_v1_settings_clearings_get",
        "responses": {
          "200": {
            "description": "Returns settings clearings",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "enabled": {
                      "type": "integer"
                    },
                    "keep_clicks_for_last_days": {
                      "type": "integer"
                    },
                    "exclude_campaign_ids": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit Settings Clearings.",
        "operationId": "post_v1_settings_clearings_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "enabled": {
                    "type": "integer",
                    "nullable": false
                  },
                  "keepClickDays": {
                    "type": "integer",
                    "nullable": false
                  },
                  "excludeCampaignIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings Clearings edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/cors": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get CORS settings.",
        "operationId": "get_v1_settings_cors_get",
        "responses": {
          "200": {
            "description": "Returns CORS settings",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "origins": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit CORS settings.",
        "operationId": "put_v1_settings_cors_origins",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "origins": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "CORS settings edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/login/whitelist": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get IP whitelist settings.",
        "operationId": "get_v1_get_login_ip_whitelist",
        "responses": {
          "200": {
            "description": "IP whitelist settings",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "ips": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "enabled": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Update IP whitelist settings.",
        "operationId": "post_v1_edit_login_ip_whitelist",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "required": [
                  "ips",
                  "enabled"
                ],
                "properties": {
                  "ips": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "enabled": {
                    "type": "boolean"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "IP whitelist successfully updated"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/info": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get Settings Info Result.",
        "operationId": "get_v1_settings_info_get",
        "responses": {
          "200": {
            "description": "Returns the settings info",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "email": {
                      "type": "string"
                    },
                    "timezone": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit Settings Info.",
        "operationId": "put_v1_settings_info_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "email": {
                    "type": "string",
                    "nullable": false
                  },
                  "timezone": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings info edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/login_page": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Update login page in settings",
        "operationId": "get_v1_login_page",
        "responses": {
          "200": {
            "description": "Login page fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "value": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Update login page in settings",
        "operationId": "post_v1_update_login_page",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "value": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings login page edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/stats": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get Settings Stats Result.",
        "operationId": "get_v1_settings_stats_get",
        "responses": {
          "200": {
            "description": "Returns the settings Stats",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "withTrafficFilterMinClicks": {
                      "type": "integer"
                    },
                    "requestClientHints": {
                      "type": "boolean",
                      "nullable": false
                    },
                    "ignorePrefetchRequests": {
                      "type": "boolean",
                      "nullable": false
                    },
                    "campaignAsOfferSavingClickMode": {
                      "type": "string",
                      "enum": [
                        "all",
                        "only_parent",
                        "only_child"
                      ],
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit Settings Stats.",
        "operationId": "put_v1_settings_stats_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "withTrafficFilterMinClicks": {
                    "type": "integer",
                    "nullable": false
                  },
                  "requestClientHints": {
                    "type": "boolean",
                    "nullable": false
                  },
                  "ignorePrefetchRequests": {
                    "type": "boolean",
                    "nullable": false
                  },
                  "assignOfferOnBaseClick": {
                    "type": "boolean",
                    "nullable": false
                  },
                  "campaignAsOfferSavingClickMode": {
                    "type": "string",
                    "enum": [
                      "all",
                      "only_parent",
                      "only_child"
                    ],
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings Stats edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/uclick_ttl": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get uclick ttl.",
        "operationId": "get_v1_settings_uclick_ttl_get",
        "responses": {
          "200": {
            "description": "Returns the settings uclick ttl",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "ttl": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Settings"
        ],
        "summary": "Change uclick ttl.",
        "operationId": "put_v1_settings_uclick_ttl_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "uclickTtl": {
                    "type": "integer",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings uclick ttl edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/url_customization": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get settings url customization for traffic distribution.",
        "operationId": "get_v1_get_url_customization",
        "responses": {
          "200": {
            "description": "Url customization for traffic distribution fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "click_path": {
                      "type": "string"
                    },
                    "campaign_key": {
                      "type": "string"
                    },
                    "landing_page_lp": {
                      "type": "string"
                    },
                    "postback_cnv_id": {
                      "type": "string"
                    },
                    "click_aliases": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit Settings Url Customization.",
        "operationId": "post_v1_url_customization_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "clickPath": {
                    "type": "string",
                    "nullable": false
                  },
                  "campaignKey": {
                    "type": "string",
                    "nullable": false
                  },
                  "landingPageLp": {
                    "type": "string",
                    "nullable": false
                  },
                  "postbackCnvId": {
                    "type": "string",
                    "nullable": false
                  },
                  "clickAliases": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings Url Customization edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/user_keys": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get Settings User Keys Result.",
        "operationId": "get_v1_settings_user_keys_get",
        "responses": {
          "200": {
            "description": "Returns the settings User Keys",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "updateKey": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit Settings User Keys.",
        "operationId": "put_v1_settings_user_keys_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "updateKey": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings User Keys edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/bot/cost": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get bot cost settings.",
        "operationId": "get_v1_settings_bot_cost_get",
        "responses": {
          "200": {
            "description": "Returns bot cost settings",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "enabled": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Edit bot cost settings.",
        "operationId": "post_v1_settings_bot_cost_switch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "enabled": {
                    "type": "boolean",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Settings bot cost switched successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/click/api": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get template code for click api",
        "operationId": "get_v1_settings_click_api",
        "responses": {
          "200": {
            "description": "Get lp protect code",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "template": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/get/offer/click": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get offer on base or redirect click",
        "operationId": "get_v1_get_offer_click",
        "responses": {
          "200": {
            "description": "Successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "isAssignOnBaseClick": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/tracking_links": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get Tracking Links Settings Result.",
        "operationId": "get_v1_settings_tracking_links_get",
        "responses": {
          "200": {
            "description": "Returns the tracking links settings",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "clickUrl": {
                      "type": "string"
                    },
                    "postbackUrlOne": {
                      "type": "string"
                    },
                    "postbackUrlTwo": {
                      "type": "string"
                    },
                    "trackingPixelCode": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/settings/toggle/offer/click": {
      "post": {
        "tags": [
          "Settings"
        ],
        "summary": "Toggle offer on base or redirect click",
        "operationId": "post_v1_toggle_offer_click",
        "responses": {
          "200": {
            "description": "Success"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/country/list": {
      "get": {
        "tags": [
          "Shared"
        ],
        "summary": "Get country list.",
        "operationId": "get_v1_country_list",
        "responses": {
          "200": {
            "description": "Countries fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "name": {
                        "type": "string"
                      },
                      "code": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/currency/list": {
      "get": {
        "tags": [
          "Shared"
        ],
        "summary": "Get Currencies list.",
        "operationId": "get_v1_currency_list",
        "responses": {
          "200": {
            "description": "Currencies fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string"
                      },
                      "symbol": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/date_preset/list": {
      "get": {
        "tags": [
          "Shared"
        ],
        "summary": "Get Date Preset List.",
        "operationId": "get_v1_date_preset_list",
        "responses": {
          "200": {
            "description": "Date presets fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/language/list": {
      "get": {
        "tags": [
          "Shared"
        ],
        "summary": "Get language list.",
        "operationId": "get_v1_language_list",
        "responses": {
          "200": {
            "description": "Languages fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "code": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        }
      }
    },
    "/public/api/v1/system/tokens": {
      "get": {
        "tags": [
          "Shared"
        ],
        "summary": "Get System tokens",
        "operationId": "get_v1_system_tokens",
        "responses": {
          "200": {
            "description": "Tokens fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "title": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "placeholder": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/public/api/v1/timezone/list": {
      "get": {
        "tags": [
          "Shared"
        ],
        "summary": "Get timezone list.",
        "operationId": "get_v1_timezone_list",
        "responses": {
          "200": {
            "description": "TimeZones fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "timezone": {
                        "type": "string"
                      },
                      "offset": {
                        "type": "string"
                      },
                      "isDST": {
                        "type": "boolean"
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/tags": {
      "get": {
        "tags": [
          "Tag"
        ],
        "summary": "Get all Tags.",
        "operationId": "get_v1_tag_get",
        "responses": {
          "200": {
            "description": "Tags fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/tagView"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Tag"
        ],
        "summary": "Create Tag.",
        "operationId": "post_v1_tag_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/tag"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Tag created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/tags/{id}": {
      "put": {
        "tags": [
          "Tag"
        ],
        "summary": "Edit Tag.",
        "operationId": "put_v1_tag_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/tag"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tag edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Tag not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Tag"
        ],
        "summary": "Delete Tag.",
        "operationId": "delete_v1_tag_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Tag deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/tags/{subject}/{id}": {
      "get": {
        "tags": [
          "Tag"
        ],
        "summary": "Get linked Tags for specific subject",
        "operationId": "get_v1_tags_get",
        "parameters": [
          {
            "$ref": "#/components/parameters/tagSubject"
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Tags fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/tags/{id}/link": {
      "post": {
        "tags": [
          "Tag"
        ],
        "summary": "Link Tag.",
        "operationId": "post_v1_tag_link",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/tagLink"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tag linked successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "409": {
            "description": "Link already exists"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/tags/{subject}/change_tags": {
      "post": {
        "tags": [
          "Tag"
        ],
        "summary": "Change Tags for multiple specific subject",
        "operationId": "post_v1_change_tags",
        "parameters": [
          {
            "$ref": "#/components/parameters/tagSubject"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    },
                    "nullable": false
                  },
                  "tagUuids": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Mass Tags change",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "failedIds": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/tags/{id}/unlink": {
      "delete": {
        "tags": [
          "Tag"
        ],
        "summary": "Unlink Tag.",
        "operationId": "delete_v1_tag_unlink",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/tagLink"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tag unlinked successfully"
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source/{id}/clone": {
      "get": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Clone Traffic Source.",
        "operationId": "get_v1_traffic_source_clone",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "200": {
            "description": "Traffic Source fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer"
                    },
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "postbackUrl": {
                      "type": "string",
                      "nullable": false
                    },
                    "trafficLoss": {
                      "type": "number",
                      "format": "float",
                      "nullable": false
                    },
                    "percent": {
                      "type": "number",
                      "format": "float",
                      "nullable": false
                    },
                    "s2sMode": {
                      "type": "string",
                      "enum": [
                        "FIRST",
                        "APPROVED",
                        "ALL"
                      ]
                    },
                    "payout": {
                      "type": "number",
                      "format": "float",
                      "nullable": false
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string",
                            "nullable": false
                          },
                          "parameter": {
                            "type": "string",
                            "nullable": true
                          },
                          "placeholder": {
                            "type": "string",
                            "nullable": true
                          },
                          "name": {
                            "type": "string",
                            "nullable": true
                          },
                          "hideInLink": {
                            "type": "boolean",
                            "nullable": false
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "statusPostbackRelations": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "conversionStatus": {
                            "type": "string"
                          },
                          "link": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "isPostbackRelationsActive": {
                      "type": "boolean",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source": {
      "post": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Create Traffic Source.",
        "operationId": "post_v1_traffic_source_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "postbackUrl": {
                    "type": "string",
                    "nullable": true
                  },
                  "trafficLoss": {
                    "type": "number",
                    "format": "float",
                    "nullable": false
                  },
                  "percent": {
                    "type": "number",
                    "format": "float",
                    "nullable": false
                  },
                  "s2sMode": {
                    "type": "string",
                    "enum": [
                      "FIRST",
                      "APPROVED",
                      "ALL"
                    ]
                  },
                  "payout": {
                    "type": "number",
                    "format": "float",
                    "nullable": false
                  },
                  "tokens": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "id": {
                          "type": "string",
                          "nullable": false
                        },
                        "parameter": {
                          "type": "string",
                          "nullable": true
                        },
                        "placeholder": {
                          "type": "string",
                          "nullable": true
                        },
                        "name": {
                          "type": "string",
                          "nullable": true
                        },
                        "hideInLink": {
                          "type": "boolean",
                          "nullable": true
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  },
                  "statusPostbackRelations": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "conversionStatus": {
                          "type": "string"
                        },
                        "link": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  },
                  "isPostbackRelationsActive": {
                    "type": "boolean",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Traffic Source created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source/{id}": {
      "get": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Get Traffic Source.",
        "operationId": "get_v1_traffic_source_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Traffic Source fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer"
                    },
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "postbackUrl": {
                      "type": "string",
                      "nullable": false
                    },
                    "trafficLoss": {
                      "type": "number",
                      "format": "float",
                      "nullable": false
                    },
                    "percent": {
                      "type": "number",
                      "format": "float",
                      "nullable": false
                    },
                    "s2sMode": {
                      "type": "string",
                      "enum": [
                        "FIRST",
                        "APPROVED",
                        "ALL"
                      ]
                    },
                    "payout": {
                      "type": "number",
                      "format": "float",
                      "nullable": false
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string",
                            "nullable": false
                          },
                          "parameter": {
                            "type": "string",
                            "nullable": true
                          },
                          "placeholder": {
                            "type": "string",
                            "nullable": true
                          },
                          "name": {
                            "type": "string",
                            "nullable": true
                          },
                          "hideInLink": {
                            "type": "boolean",
                            "nullable": false
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "statusPostbackRelations": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "conversionStatus": {
                            "type": "string"
                          },
                          "link": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    },
                    "isPostbackRelationsActive": {
                      "type": "boolean",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Edit Traffic Source.",
        "operationId": "put_v1_traffic_source_edit",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  },
                  "postbackUrl": {
                    "type": "string",
                    "nullable": false
                  },
                  "trafficLoss": {
                    "type": "number",
                    "format": "float",
                    "nullable": false
                  },
                  "percent": {
                    "type": "number",
                    "format": "float",
                    "nullable": false
                  },
                  "s2sMode": {
                    "type": "string",
                    "enum": [
                      "FIRST",
                      "APPROVED",
                      "ALL"
                    ]
                  },
                  "payout": {
                    "type": "number",
                    "format": "float",
                    "nullable": false
                  },
                  "tokens": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "id": {
                          "type": "string",
                          "nullable": false
                        },
                        "parameter": {
                          "type": "string",
                          "nullable": true
                        },
                        "placeholder": {
                          "type": "string",
                          "nullable": true
                        },
                        "name": {
                          "type": "string",
                          "nullable": true
                        },
                        "hideInLink": {
                          "type": "boolean",
                          "nullable": true
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  },
                  "statusPostbackRelations": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "conversionStatus": {
                          "type": "string"
                        },
                        "link": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "nullable": false
                  },
                  "isPostbackRelationsActive": {
                    "type": "boolean",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Traffic Source edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Delete Traffic Source.",
        "operationId": "delete_v1_traffic_source_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Traffic Source deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "patch": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Restore Traffic Source.",
        "operationId": "patch_v1_traffic_source_restore",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Traffic Source restored successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source/campaigns_count/{id}": {
      "get": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Get Traffic Source Campaigns Count.",
        "operationId": "get_v1_traffic_source_campaigns_count_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Traffic Source Campaigns Count fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "count": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source/list/filtered": {
      "get": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Get Traffic Source list filtered.",
        "operationId": "get_v1_traffic_source_list_filtered",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/groupUuid"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/excludeIdsRanges"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Traffic Sources fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer"
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "groupId": {
                        "type": "string",
                        "nullable": true
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source_templates": {
      "get": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Get Traffic Source Templates.",
        "operationId": "get_v1_traffic_source_templates_get",
        "responses": {
          "200": {
            "description": "Traffic Source Templates fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "name": {
                      "type": "string",
                      "nullable": false
                    },
                    "postbackUrl": {
                      "type": "string",
                      "nullable": false
                    },
                    "isIntegrated": {
                      "type": "boolean"
                    },
                    "adsFormat": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "",
                          "appwall",
                          "dialog ads",
                          "display",
                          "in-app",
                          "in-video",
                          "native ads",
                          "notifications",
                          "pop",
                          "push",
                          "redirect",
                          "retargeting",
                          "rich media",
                          "search"
                        ]
                      }
                    },
                    "trafficType": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "",
                          "adult",
                          "banner",
                          "banners",
                          "branding",
                          "calendar",
                          "clickunde",
                          "dating",
                          "desktop",
                          "display",
                          "in - page push",
                          "in-app",
                          "in-page push",
                          "mobile",
                          "native",
                          "native ads",
                          "native banners",
                          "pops",
                          "popunder",
                          "popunders",
                          "postitial",
                          "preroll",
                          "push",
                          "redirect",
                          "retargeting",
                          "skim",
                          "video",
                          "videoslider",
                          "web push"
                        ]
                      }
                    },
                    "selfServe": {
                      "type": "boolean"
                    },
                    "geo": {
                      "type": "string",
                      "nullable": false
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string",
                            "nullable": false
                          },
                          "parameter": {
                            "type": "string",
                            "nullable": false
                          },
                          "placeholder": {
                            "type": "string",
                            "nullable": false
                          },
                          "name": {
                            "type": "string",
                            "nullable": false
                          },
                          "hideInLink": {
                            "type": "boolean",
                            "nullable": false
                          }
                        },
                        "type": "object"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/traffic_source/{id}/rename": {
      "put": {
        "tags": [
          "TrafficSource"
        ],
        "summary": "Rename Traffic Source.",
        "operationId": "put_v1_traffic_source_rename",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Traffic Source renamed successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trends": {
      "get": {
        "tags": [
          "Trends"
        ],
        "summary": "Get Trends report with permissions, timezone, hidden-profit, and default-column settings.",
        "operationId": "get_v1_get_trends",
        "parameters": [
          {
            "$ref": "#/components/parameters/grouping"
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "$ref": "#/components/parameters/status"
          },
          {
            "$ref": "#/components/parameters/groupUuids"
          },
          {
            "$ref": "#/components/parameters/includeCampaignsWithoutGroup"
          },
          {
            "$ref": "#/components/parameters/trafficSourceIds"
          },
          {
            "$ref": "#/components/parameters/includeCampaignsWithDeletedTrafficSource"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/hideBots"
          }
        ],
        "responses": {
          "200": {
            "description": "Trends fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "stats": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "date": {
                            "type": "string"
                          },
                          "leads": {
                            "type": "string"
                          },
                          "revenue": {
                            "type": "number",
                            "format": "float"
                          },
                          "profit": {
                            "type": "number",
                            "format": "float"
                          },
                          "clicks": {
                            "type": "integer"
                          },
                          "cr": {
                            "type": "number",
                            "format": "float"
                          },
                          "bots": {
                            "type": "integer"
                          },
                          "epc": {
                            "type": "number",
                            "format": "float"
                          },
                          "cpc": {
                            "type": "number",
                            "format": "float"
                          },
                          "costs": {
                            "type": "number",
                            "format": "float"
                          },
                          "roi": {
                            "type": "number",
                            "format": "float"
                          },
                          "is_deleted": {
                            "type": "boolean"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trigger/{id}/performance": {
      "post": {
        "tags": [
          "Trigger"
        ],
        "summary": "Check Trigger condition evaluation performance.",
        "operationId": "post_v1_trigger_performance",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Trigger condition performance fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/triggerPerformanceResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Trigger not found"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trigger": {
      "get": {
        "tags": [
          "Trigger"
        ],
        "summary": "Get Trigger list.",
        "operationId": "get_v1_trigger_list",
        "parameters": [
          {
            "name": "sortColumn",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "id",
                "name",
                "lastActionAt"
              ]
            }
          },
          {
            "name": "sortType",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Trigger list fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/triggerListResponse"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "Trigger"
        ],
        "summary": "Create Trigger.",
        "operationId": "post_v1_trigger_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/triggerRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Trigger created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/triggerCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trigger/{id}": {
      "get": {
        "tags": [
          "Trigger"
        ],
        "summary": "Get Trigger details.",
        "operationId": "get_v1_trigger_get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Trigger data fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/triggerView"
                }
              }
            }
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Trigger not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Trigger"
        ],
        "summary": "Update Trigger.",
        "operationId": "put_v1_trigger_update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/triggerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Trigger updated successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Trigger not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Trigger"
        ],
        "summary": "Delete Trigger.",
        "operationId": "delete_v1_trigger_delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Trigger deleted successfully"
          },
          "403": {
            "description": "Access Denied"
          },
          "404": {
            "description": "Trigger not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trigger/log/list": {
      "get": {
        "tags": [
          "Trigger"
        ],
        "summary": "Get Trigger logs.",
        "operationId": "get_v1_trigger_log_list",
        "parameters": [
          {
            "$ref": "#/components/parameters/triggerLogTriggerId"
          },
          {
            "$ref": "#/components/parameters/triggerLogConditionStatus"
          },
          {
            "$ref": "#/components/parameters/triggerLogActionType"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Trigger logs fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/triggerLogsResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "500": {
            "description": "Internal error"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trigger/pause": {
      "patch": {
        "tags": [
          "Trigger"
        ],
        "summary": "Pause Triggers.",
        "operationId": "patch_v1_trigger_pause",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "required": [
                  "ids"
                ],
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Triggers paused successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/trigger/start": {
      "patch": {
        "tags": [
          "Trigger"
        ],
        "summary": "Start Triggers.",
        "operationId": "patch_v1_trigger_start",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "required": [
                  "ids"
                ],
                "properties": {
                  "ids": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Triggers started successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/change_login": {
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Change User Login.",
        "operationId": "put_v1_user_change_login",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "login": {
                    "type": "string",
                    "nullable": false
                  },
                  "password": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Login edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/change_password": {
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Change User Password.",
        "operationId": "put_v1_user_change_password",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "password": {
                    "type": "string",
                    "nullable": false
                  },
                  "newPassword": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Password edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/create": {
      "post": {
        "tags": [
          "User"
        ],
        "summary": "Create User",
        "operationId": "post_v1_user_create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "login": {
                    "type": "string",
                    "nullable": false
                  },
                  "password": {
                    "type": "string",
                    "nullable": false
                  },
                  "role": {
                    "type": "string",
                    "enum": [
                      "admin",
                      "user"
                    ],
                    "nullable": false
                  },
                  "permissions": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/permission"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "User created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "user_id": {
                      "type": "integer",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          },
          "409": {
            "description": "Conflict"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/{userId}": {
      "delete": {
        "tags": [
          "User"
        ],
        "summary": "Delete User.",
        "operationId": "delete_v1_user_delete",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "User deleted successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/{adminId}/can_create_users": {
      "get": {
        "tags": [
          "User"
        ],
        "summary": "Get information about admin's ability to create users",
        "operationId": "get_v1_can_create_users_get",
        "parameters": [
          {
            "name": "adminId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the information about ability to create users",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "canCreateUsers": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Set if admin can create another users.",
        "operationId": "put_v1_can_create_users_edit",
        "parameters": [
          {
            "name": "adminId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "canCreateUsers": {
                    "type": "boolean"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Admin CanCreateUsersSettings setting edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/cookie": {
      "get": {
        "tags": [
          "Identity"
        ],
        "summary": "Get cookie settings.",
        "operationId": "get_v1_identity_cookie_get",
        "responses": {
          "200": {
            "description": "Returns the cookie settings",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "ttl": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "Identity"
        ],
        "summary": "Edit cookie settings.",
        "operationId": "put_v1_identity_cookie_edit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "ttl": {
                    "type": "integer",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Cookie settings edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/{userId}/hide_profit": {
      "get": {
        "tags": [
          "User"
        ],
        "summary": "HideProfit Info.",
        "operationId": "get_v1_hide_profit_get",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the information about access to profit",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "hideProfit": {
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Edit User HideProfit.",
        "operationId": "put_v1_hide_profit_edit",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "hideProfit": {
                    "type": "boolean"
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "User HideProfit setting edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/{userId}/permissions": {
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Edit User Permissions.",
        "description": "**This endpoint replaces all user permissions. Passing an empty array will remove all access for the user.**\n**To modify specific permissions, you must include all existing permissions along with the changes.**",
        "operationId": "put_v1_user_permissions_edit",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "permissions": {
                    "type": "array",
                    "items": {
                      "properties": {
                        "canCreate": {
                          "type": "boolean"
                        },
                        "accessLevel": {
                          "type": "string"
                        },
                        "subject": {
                          "type": "string"
                        },
                        "readUuids": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "modifyUuids": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "readGroupUuids": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "modifyGroupUuids": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "type": "object"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "User Permissions edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/{userId}/edit": {
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Edit User.",
        "operationId": "put_v1_user_edit",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "login": {
                    "type": "string",
                    "nullable": false
                  },
                  "password": {
                    "type": "string",
                    "nullable": true
                  },
                  "role": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Edit edited successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/{adminId}/accessible-users": {
      "get": {
        "tags": [
          "UserAccess"
        ],
        "summary": "Accessible Users of Admin.",
        "operationId": "get_v1_accessible_users_get",
        "parameters": [
          {
            "name": "adminId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Accessible Users of Admin fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer",
                        "nullable": false
                      },
                      "login": {
                        "type": "string",
                        "nullable": false
                      },
                      "role": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      },
      "post": {
        "tags": [
          "UserAccess"
        ],
        "summary": "Set Accessible Users for Admin.",
        "operationId": "post_v1_accessible_users_set",
        "parameters": [
          {
            "name": "adminId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "userIds": {
                    "type": "array",
                    "items": {
                      "type": "integer"
                    }
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Accessible Users for Admin set successfully"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/users/accessible": {
      "get": {
        "tags": [
          "UserAccess"
        ],
        "summary": "Accessible Users.",
        "operationId": "get_v1_my_accessible_users_get",
        "responses": {
          "200": {
            "description": "Accessible Users fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "properties": {
                      "id": {
                        "type": "integer",
                        "nullable": false
                      },
                      "login": {
                        "type": "string",
                        "nullable": false
                      },
                      "role": {
                        "type": "string",
                        "nullable": false
                      }
                    },
                    "type": "object"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          },
          "403": {
            "description": "Access Denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/role": {
      "get": {
        "tags": [
          "AuthorizationSubject"
        ],
        "summary": "User Role.",
        "operationId": "get_v1_user_role_get",
        "responses": {
          "200": {
            "description": "Returns the user role",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "id": {
                      "type": "integer",
                      "nullable": false
                    },
                    "role": {
                      "type": "string",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/{userId}/clone": {
      "get": {
        "tags": [
          "Identity"
        ],
        "summary": "Identity Clone.",
        "operationId": "get_v1_identity_get_clone",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the identity clone of the given id",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "identity": {
                      "type": "string"
                    },
                    "role": {
                      "type": "string"
                    },
                    "permissions": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "canCreate": {
                            "type": "boolean"
                          },
                          "accessLevel": {
                            "type": "string"
                          },
                          "subject": {
                            "type": "string"
                          },
                          "read": {
                            "type": "array",
                            "items": {
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            }
                          },
                          "write": {
                            "type": "array",
                            "items": {
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            }
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/{userId}": {
      "get": {
        "tags": [
          "Identity"
        ],
        "summary": "Identity Info.",
        "operationId": "get_v1_identity_get",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the identity clone of the given id",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "identity": {
                      "type": "string"
                    },
                    "role": {
                      "type": "string"
                    },
                    "permissions": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "canCreate": {
                            "type": "boolean"
                          },
                          "accessLevel": {
                            "type": "string"
                          },
                          "subject": {
                            "type": "string"
                          },
                          "read": {
                            "type": "array",
                            "items": {
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            }
                          },
                          "write": {
                            "type": "array",
                            "items": {
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            }
                          },
                          "readGroups": {
                            "type": "array",
                            "items": {
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            }
                          },
                          "modifyGroups": {
                            "type": "array",
                            "items": {
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            }
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/identity/users/get": {
      "get": {
        "tags": [
          "Identity"
        ],
        "summary": "Identity Users.",
        "operationId": "get_v1_identity_get_users",
        "parameters": [
          {
            "$ref": "#/components/parameters/name"
          },
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "$ref": "#/components/parameters/timezone"
          },
          {
            "$ref": "#/components/parameters/sortColumn"
          },
          {
            "$ref": "#/components/parameters/sortType"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Returns all allowable users with stats",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "users": {
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "role": {
                          "type": "string"
                        },
                        "hideProfit": {
                          "type": "boolean"
                        },
                        "clicks": {
                          "type": "integer"
                        },
                        "leads": {
                          "type": "string"
                        },
                        "cr": {
                          "type": "number",
                          "format": "float"
                        },
                        "epc": {
                          "type": "number",
                          "format": "float"
                        },
                        "cpc": {
                          "type": "number",
                          "format": "float"
                        },
                        "revenue": {
                          "type": "number",
                          "format": "float"
                        },
                        "costs": {
                          "type": "number",
                          "format": "float"
                        },
                        "profit": {
                          "type": "number",
                          "format": "float"
                        },
                        "roi": {
                          "type": "number",
                          "format": "float"
                        }
                      },
                      "type": "object"
                    },
                    "totalCount": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "404": {
            "description": "Not found"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/log": {
      "get": {
        "tags": [
          "User"
        ],
        "summary": "Get Users Events log.",
        "operationId": "get_v1_users_log",
        "parameters": [
          {
            "$ref": "#/components/parameters/datePreset"
          },
          {
            "$ref": "#/components/parameters/dateFrom"
          },
          {
            "$ref": "#/components/parameters/dateTo"
          },
          {
            "name": "timezone",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/userLogSortColumn"
          },
          {
            "name": "sortType",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "asc",
                "desc"
              ]
            }
          },
          {
            "$ref": "#/components/parameters/userId"
          },
          {
            "name": "type",
            "in": "query",
            "description": "one from /public/api/v1/users_log/types",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/search"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "User events log fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "rows": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "aggregate_id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "occurred_on": {
                            "type": "string"
                          },
                          "payload": {
                            "type": "string"
                          },
                          "ip_address": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "total_count": {
                      "type": "integer"
                    },
                    "columns": {
                      "type": "array",
                      "items": {
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/log/types": {
      "get": {
        "tags": [
          "User"
        ],
        "summary": "Get Users Events log.",
        "operationId": "get_v1_users_log_types",
        "responses": {
          "200": {
            "description": "User events log types fetched successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/logout": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "User Logout.",
        "operationId": "post_v1_user_logout",
        "responses": {
          "200": {
            "description": "User Logout successfully"
          },
          "403": {
            "description": "Access Denied"
          }
        }
      }
    },
    "/public/api/v1/user/2fa/disable": {
      "post": {
        "tags": [
          "User"
        ],
        "summary": "Disable two-factor verification for current user",
        "operationId": "post_v1_user_2fa_disable",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "verificationCode": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Two factor verification have been disabled"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/2fa/enable": {
      "post": {
        "tags": [
          "User"
        ],
        "summary": "Enable two-factor verification for current user",
        "operationId": "post_v1_user_2fa_enable",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "verificationCode": {
                    "type": "string",
                    "nullable": false
                  }
                },
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Two factor verification have been enabled"
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/2fa/secret/generate": {
      "put": {
        "tags": [
          "User"
        ],
        "summary": "Generate two-factor secrets for current user, when two-factor authentication is disabled",
        "operationId": "put_v1_user_2fa_secret_generate",
        "responses": {
          "200": {
            "description": "Two factor secrets have been generated",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "secret": {
                      "type": "string",
                      "nullable": false
                    },
                    "backupCodes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    },
    "/public/api/v1/user/2fa/status": {
      "get": {
        "tags": [
          "User"
        ],
        "summary": "Get information about if two-factor verification enabled for current user",
        "operationId": "get_v1_user_2fa_status",
        "responses": {
          "200": {
            "description": "Successfully got status",
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "isEnabled": {
                      "type": "boolean",
                      "nullable": false
                    }
                  },
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Bad request"
          },
          "403": {
            "description": "Access denied"
          }
        },
        "security": [
          {
            "apiKey": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "rotationLanding": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "tag": {
        "properties": {
          "color": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "clickbankSecret": {
        "properties": {
          "secret": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "clickbankLink": {
        "properties": {
          "link": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "clickbankTestRequest": {
        "properties": {
          "iv": {
            "type": "string"
          },
          "notification": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "clickbankTestResponse": {
        "properties": {
          "transactionType": {
            "type": "string"
          },
          "totalAccountAmount": {
            "type": "number",
            "format": "float"
          },
          "trackingCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "type": "object"
      },
      "safebrowseApiKey": {
        "properties": {
          "api_key": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "safebrowseError": {
        "properties": {
          "error": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "tagView": {
        "properties": {
          "id": {
            "type": "string"
          },
          "color": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "campaignCount": {
            "type": "integer"
          },
          "landingCount": {
            "type": "integer"
          },
          "offerCount": {
            "type": "integer"
          },
          "rotationCount": {
            "type": "integer"
          },
          "affiliateNetworkCount": {
            "type": "integer"
          },
          "trafficSourceCount": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "tagLink": {
        "properties": {
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "landing",
              "offer",
              "rotation",
              "affiliate_network",
              "traffic_source"
            ]
          },
          "subjectId": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "rotationLandingGet": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "clicklogPageInfo": {
        "properties": {
          "from": {
            "type": "string"
          },
          "to": {
            "type": "string"
          },
          "hasNextPage": {
            "type": "boolean"
          },
          "hasPrevPage": {
            "type": "boolean"
          },
          "direction": {
            "type": "string"
          },
          "sorting": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          }
        },
        "type": "object",
        "nullable": true
      },
      "deleteCampaignClicksExternal": {
        "properties": {
          "preset": {
            "type": "string",
            "enum": [
              "full",
              "custom_time"
            ]
          },
          "dateFrom": {
            "type": "string",
            "nullable": true
          },
          "dateTo": {
            "type": "string",
            "nullable": true
          },
          "timezone": {
            "type": "string",
            "nullable": true
          }
        },
        "type": "object"
      },
      "deleteCampaignsClicksExternal": {
        "properties": {
          "campaignIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "preset": {
            "type": "string",
            "enum": [
              "full",
              "custom_time"
            ]
          },
          "dateFrom": {
            "type": "string",
            "nullable": true
          },
          "dateTo": {
            "type": "string",
            "nullable": true
          },
          "timezone": {
            "type": "string",
            "nullable": true
          }
        },
        "type": "object"
      },
      "deleteCampaignClicksInternal": {
        "properties": {
          "campaignIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "preset": {
            "type": "string",
            "enum": [
              "full",
              "custom_time"
            ]
          },
          "dateFrom": {
            "type": "string",
            "nullable": true
          },
          "dateTo": {
            "type": "string",
            "nullable": true
          },
          "timezone": {
            "type": "string",
            "nullable": true
          }
        },
        "type": "object"
      },
      "enqueueTask": {
        "properties": {
          "datePreset": {
            "type": "string",
            "enum": [
              "today",
              "yesterday",
              "this_week",
              "last_week",
              "last_2_days",
              "last_3_days",
              "last_7_days",
              "last_14_days",
              "last_30_days",
              "this_month",
              "last_month",
              "this_year",
              "last_year",
              "all_time",
              "custom_time"
            ]
          },
          "dateFrom": {
            "type": "string",
            "nullable": true
          },
          "dateTo": {
            "type": "string",
            "nullable": true
          },
          "timezone": {
            "type": "string"
          },
          "campaignIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "groupIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerCampaignIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "offerIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "directUrls": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "geoIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "filter": {
            "type": "string"
          },
          "csvSource": {
            "type": "string",
            "enum": [
              "clicklog",
              "conversions"
            ]
          }
        },
        "type": "object"
      },
      "updateCost": {
        "properties": {
          "datePreset": {
            "type": "string",
            "enum": [
              "today",
              "yesterday",
              "this_week",
              "last_week",
              "last_2_days",
              "last_3_days",
              "last_7_days",
              "last_14_days",
              "last_30_days",
              "this_month",
              "last_month",
              "this_year",
              "last_year",
              "all_time",
              "custom_time"
            ]
          },
          "dateFrom": {
            "type": "string",
            "nullable": true
          },
          "dateTo": {
            "type": "string",
            "nullable": true
          },
          "timezone": {
            "type": "string"
          },
          "tokenId": {
            "type": "integer",
            "enum": [
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21,
              22,
              23,
              24,
              25,
              26,
              27,
              28,
              29,
              30
            ],
            "nullable": true
          },
          "tokenValue": {
            "type": "string",
            "nullable": true
          },
          "model": {
            "type": "string",
            "enum": [
              "CPC",
              "COSTS"
            ]
          },
          "cost": {
            "type": "number",
            "format": "float"
          },
          "currency": {
            "type": "string"
          },
          "uniqueness": {
            "type": "string",
            "enum": [
              "",
              "campaign",
              "tracker",
              "campaign_or_tracker"
            ],
            "nullable": true
          },
          "tokenFilters": {
            "description": "List of token filters with operators to use this query instead of one tokenId, tokenValue",
            "type": "array",
            "items": {
              "required": [
                "tokenId",
                "tokenValue"
              ],
              "properties": {
                "tokenId": {
                  "description": "Token identifier",
                  "type": "integer",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15,
                    16,
                    17,
                    18,
                    19,
                    20,
                    21,
                    22,
                    23,
                    24,
                    25,
                    26,
                    27,
                    28,
                    29,
                    30
                  ]
                },
                "tokenValue": {
                  "description": "Token value to filter by",
                  "type": "string"
                },
                "operator": {
                  "description": "Logical operator to connect this filter with the previous one. First item does not use operator, required for others",
                  "type": "string",
                  "enum": [
                    "AND",
                    "OR"
                  ],
                  "nullable": true
                }
              },
              "type": "object"
            },
            "nullable": true
          }
        },
        "type": "object"
      },
      "grouping": {
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "groupingToken": {
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "rotationDefaultPath": {
        "properties": {
          "id": {
            "type": "integer",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          },
          "landings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationLanding"
            }
          },
          "offers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationOffer"
            }
          }
        },
        "type": "object"
      },
      "rotationDefaultPathCreate": {
        "properties": {
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          },
          "landings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationLanding"
            }
          },
          "offers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationOffer"
            }
          }
        },
        "type": "object"
      },
      "rotationDefaultPathGet": {
        "properties": {
          "id": {
            "type": "integer",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          },
          "landings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationLandingGet"
            }
          },
          "offers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationOfferGet"
            }
          }
        },
        "type": "object"
      },
      "campaignSettings": {
        "properties": {
          "s2sPostback": {
            "type": "string"
          },
          "ea": {
            "type": "integer"
          },
          "postbackPercent": {
            "type": "number",
            "format": "float"
          },
          "payoutPercent": {
            "type": "number",
            "format": "float"
          },
          "trafficLossPercent": {
            "type": "number",
            "format": "float"
          },
          "appendToCampaignUrl": {
            "type": "string"
          },
          "appendToOfferUrl": {
            "type": "string"
          },
          "appendToLandingUrl": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "campaignSettingsData": {
        "properties": {
          "s2sPostback": {
            "type": "string"
          },
          "ea": {
            "type": "integer"
          },
          "postbackPercent": {
            "type": "number",
            "format": "float"
          },
          "payoutPercent": {
            "type": "number",
            "format": "float"
          },
          "trafficLossPercent": {
            "type": "number",
            "format": "float"
          },
          "appendToCampaignUrl": {
            "type": "string"
          },
          "appendToOfferUrl": {
            "type": "string"
          },
          "appendToLandingUrl": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "criterion": {
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "brand_and_model",
              "os_and_version",
              "browser_and_version",
              "day_of_week",
              "continent",
              "country",
              "region",
              "state",
              "city",
              "referer",
              "ip",
              "user_agent",
              "ip_version",
              "query_value",
              "url",
              "headers",
              "language",
              "part_of_day",
              "unique",
              "crawler",
              "proxy_vpn",
              "datacenter",
              "company",
              "device_resolution",
              "device_type",
              "bot",
              "traffic_source",
              "token_1",
              "token_2",
              "token_3",
              "token_4",
              "token_5",
              "token_6",
              "token_7",
              "token_8",
              "token_9",
              "token_10",
              "token_11",
              "token_12",
              "token_13",
              "token_14",
              "token_15",
              "token_16",
              "token_17",
              "token_18",
              "token_19",
              "token_20",
              "token_21",
              "token_22",
              "token_23",
              "token_24",
              "token_25",
              "token_26",
              "token_27",
              "token_28",
              "token_29",
              "token_30",
              "isp",
              "organization",
              "connection",
              "binom_protect",
              "reverse_dns",
              "conversion",
              "conversion_status_one",
              "conversion_status_two"
            ]
          },
          "enabled": {
            "type": "boolean"
          },
          "operator": {
            "type": "string",
            "enum": [
              "is",
              "is_not"
            ]
          },
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "exactMatch": {
            "type": "boolean"
          },
          "allowEmpty": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "rotationRule": {
        "properties": {
          "id": {
            "type": "integer",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "markAsBot": {
            "type": "boolean"
          },
          "paths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationDefaultPath"
            }
          },
          "criteria": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/criterion"
            }
          }
        },
        "type": "object"
      },
      "rotationRuleCreate": {
        "properties": {
          "id": {
            "type": "integer",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "markAsBot": {
            "type": "boolean"
          },
          "paths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationDefaultPath"
            }
          },
          "criteria": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/criterion"
            }
          }
        },
        "type": "object"
      },
      "rotationRuleGet": {
        "properties": {
          "id": {
            "type": "integer",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "markAsBot": {
            "type": "boolean"
          },
          "paths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/rotationDefaultPathGet"
            }
          },
          "criteria": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/criterion"
            }
          }
        },
        "type": "object"
      },
      "rotationOffer": {
        "properties": {
          "offerId": {
            "description": "if it not empty, campaignId and directUrl will be cleared",
            "type": "integer"
          },
          "campaignId": {
            "description": "will be cleared, if offerId not empty",
            "type": "integer"
          },
          "directUrl": {
            "description": "will be cleared, if campaignId or offerId not empty",
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "rotationOfferGet": {
        "properties": {
          "offerId": {
            "type": "integer"
          },
          "campaignId": {
            "type": "integer"
          },
          "enabled": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          },
          "directUrl": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "affiliateNetworkName": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          },
          "conversionCap": {
            "properties": {
              "isActive": {
                "type": "boolean",
                "nullable": false
              },
              "currentCap": {
                "type": "integer",
                "nullable": false
              },
              "maxCap": {
                "type": "integer",
                "nullable": false
              },
              "fill": {
                "type": "integer",
                "nullable": false
              },
              "priority": {
                "type": "string",
                "enum": [
                  "in_path",
                  "alternative"
                ],
                "nullable": true
              }
            },
            "type": "object",
            "nullable": true
          },
          "payout": {
            "properties": {
              "isAuto": {
                "type": "boolean"
              },
              "isUpsell": {
                "type": "boolean"
              },
              "money": {
                "properties": {
                  "amount": {
                    "type": "number",
                    "format": "float"
                  },
                  "currency": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "conversionCapEntity": {
        "properties": {
          "isActive": {
            "type": "boolean"
          },
          "maxCap": {
            "type": "integer"
          },
          "startingFrom": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "resetFrequency": {
            "type": "integer"
          },
          "alternativeOfferId": {
            "type": "integer"
          },
          "priority": {
            "type": "string",
            "enum": [
              "in_path",
              "alternative"
            ],
            "nullable": true
          }
        },
        "type": "object",
        "nullable": true
      },
      "clickCapEntity": {
        "properties": {
          "isActive": {
            "type": "boolean"
          },
          "maxCap": {
            "type": "integer"
          },
          "startingFrom": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "resetFrequency": {
            "type": "integer"
          },
          "alternativeOfferId": {
            "type": "integer"
          },
          "priority": {
            "type": "string",
            "enum": [
              "in_path",
              "alternative"
            ],
            "nullable": true
          }
        },
        "type": "object",
        "nullable": true
      },
      "conversionCapEntityMass": {
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "isActive": {
            "type": "boolean"
          },
          "maxCap": {
            "type": "integer"
          },
          "startingFrom": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "resetFrequency": {
            "type": "integer"
          },
          "alternativeOfferId": {
            "type": "integer"
          },
          "priority": {
            "type": "string",
            "enum": [
              "in_path",
              "alternative"
            ],
            "nullable": true
          }
        },
        "type": "object",
        "nullable": true
      },
      "clickCapEntityMass": {
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "isActive": {
            "type": "boolean"
          },
          "maxCap": {
            "type": "integer"
          },
          "startingFrom": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "resetFrequency": {
            "type": "integer"
          },
          "alternativeOfferId": {
            "type": "integer"
          },
          "priority": {
            "type": "string",
            "enum": [
              "in_path",
              "alternative"
            ],
            "nullable": true
          }
        },
        "type": "object",
        "nullable": true
      },
      "trafficDistributionRotationLanding": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "weight": {
            "type": "integer"
          },
          "enabled": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "offerPayout": {
        "properties": {
          "money": {
            "properties": {
              "amount": {
                "type": "number",
                "format": "float"
              },
              "currency": {
                "type": "string",
                "enum": [
                  "USD",
                  "EUR",
                  "GBP",
                  "RUB",
                  "CNY",
                  "PLN",
                  "JPY",
                  "UAH",
                  "CAD",
                  "BTC",
                  "IDR",
                  "INR",
                  "TRY",
                  "PHP",
                  "VND",
                  "AZN",
                  "AUD",
                  "BYN",
                  "BRL",
                  "CZK",
                  "DKK",
                  "HKD",
                  "HUF",
                  "ISK",
                  "ILS",
                  "KZT",
                  "KRW",
                  "KGS",
                  "MYR",
                  "MXN",
                  "NZD",
                  "NOK",
                  "RON",
                  "SGD",
                  "ZAR",
                  "SEK",
                  "CHF",
                  "THB",
                  "UZS",
                  "EGP",
                  "AED",
                  "SAR",
                  "CLP",
                  "AFN",
                  "ALL",
                  "AMD",
                  "AOA",
                  "ARS",
                  "AWG",
                  "BAM",
                  "BBD",
                  "BDT",
                  "BHD",
                  "BIF",
                  "BND",
                  "BOB",
                  "BSD",
                  "BWP",
                  "BZD",
                  "CDF",
                  "COP",
                  "CRC",
                  "CUP",
                  "CVE",
                  "DJF",
                  "DOP",
                  "DZD",
                  "ERN",
                  "ETB",
                  "FJD",
                  "GEL",
                  "GHS",
                  "GIP",
                  "GMD",
                  "GNF",
                  "GTQ",
                  "GYD",
                  "HNL",
                  "HTG",
                  "IQD",
                  "IRR",
                  "JMD",
                  "JOD",
                  "KES",
                  "KHR",
                  "KMF",
                  "KWD",
                  "LAK",
                  "LBP",
                  "LKR",
                  "LRD",
                  "LSL",
                  "LYD",
                  "MAD",
                  "MDL",
                  "MGA",
                  "MKD",
                  "MMK",
                  "MNT",
                  "MOP",
                  "MRU",
                  "MUR",
                  "MVR",
                  "MWK",
                  "MZN",
                  "NAD",
                  "NGN",
                  "NIO",
                  "NPR",
                  "OMR",
                  "PAB",
                  "PEN",
                  "PGK",
                  "PKR",
                  "PYG",
                  "QAR",
                  "RSD",
                  "RWF",
                  "SBD",
                  "SCR",
                  "SDG",
                  "SOS",
                  "SRD",
                  "SSP",
                  "STN",
                  "SVC",
                  "SYP",
                  "SZL",
                  "TJS",
                  "TMT",
                  "TND",
                  "TOP",
                  "TTD",
                  "TWD",
                  "TZS",
                  "UGX",
                  "UYU",
                  "VES",
                  "VUV",
                  "WST",
                  "XAF",
                  "XCD",
                  "XCG",
                  "XOF",
                  "XPF",
                  "YER",
                  "ZMW"
                ]
              }
            },
            "type": "object"
          },
          "isAuto": {
            "type": "boolean"
          },
          "isUpsell": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "entityAccess": {
        "properties": {
          "read": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/userInfo"
            }
          },
          "modify": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/userInfo"
            }
          }
        },
        "type": "object"
      },
      "addPermissionUserIds": {
        "properties": {
          "read": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "modify": {
            "type": "array",
            "items": {
              "type": "int"
            }
          }
        },
        "type": "object"
      },
      "removePermissionUserIds": {
        "properties": {
          "userIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          }
        },
        "type": "object"
      },
      "userInfo": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "role": {
            "type": "string",
            "enum": [
              "user",
              "admin"
            ]
          }
        },
        "type": "object"
      },
      "trafficDistributionRotationDefaultPath": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "weight": {
            "type": "integer"
          },
          "offers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/trafficDistributionRotationOffer"
            }
          },
          "landings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/trafficDistributionRotationLanding"
            }
          },
          "enabled": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "postbackProcessingApplyFor": {
        "properties": {
          "anyCampaign": {
            "type": "boolean"
          },
          "campaignIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "affNetworkIds": {
            "type": "array",
            "items": {
              "type": "int"
            }
          },
          "operator": {
            "type": "string",
            "enum": [
              "and",
              "or"
            ]
          }
        },
        "type": "object"
      },
      "postbackProcessingRule": {
        "properties": {
          "conversionStatusCondition": {
            "properties": {
              "values": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "type": "object"
          },
          "conditions": {
            "properties": {
              "conditions": {
                "type": "array",
                "items": {
                  "properties": {
                    "dataSource": {
                      "type": "string",
                      "enum": [
                        "previous_click",
                        "postback_click"
                      ]
                    },
                    "field": {
                      "type": "string"
                    },
                    "operator": {
                      "type": "string",
                      "enum": [
                        "=",
                        "!=",
                        ">",
                        ">=",
                        "<",
                        "<="
                      ]
                    },
                    "value": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              },
              "operators": {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "and",
                    "or"
                  ]
                }
              }
            },
            "type": "object"
          },
          "actions": {
            "type": "array",
            "items": {
              "properties": {
                "operation": {
                  "type": "string",
                  "enum": [
                    "add",
                    "reduce",
                    "set",
                    "send_postback"
                  ]
                },
                "subject": {
                  "type": "string"
                },
                "value": {
                  "type": "string"
                }
              },
              "type": "object"
            }
          },
          "nextAction": {
            "type": "string",
            "enum": [
              "ignore",
              "regular"
            ]
          }
        },
        "type": "object"
      },
      "trafficDistributionCriterion": {
        "properties": {
          "type": {
            "type": "string"
          },
          "operator": {
            "type": "string",
            "enum": [
              "is",
              "is_not"
            ]
          },
          "exactMatch": {
            "type": "boolean"
          },
          "allowEmpty": {
            "type": "boolean"
          },
          "enabled": {
            "type": "boolean"
          },
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "type": "object"
      },
      "trafficDistributionRotationRule": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "enabled": {
            "type": "boolean"
          },
          "markAsBot": {
            "type": "boolean"
          },
          "weight": {
            "type": "integer"
          },
          "criteria": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/trafficDistributionCriterion"
            }
          },
          "paths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/trafficDistributionRotationDefaultPath"
            }
          }
        },
        "type": "object"
      },
      "trafficDistributionRotationOffer": {
        "properties": {
          "offerId": {
            "type": "integer"
          },
          "directUrl": {
            "type": "string"
          },
          "campaignId": {
            "type": "integer"
          },
          "weight": {
            "type": "integer"
          },
          "enabled": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "permissionCamp": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string",
            "enum": [
              "MODIFY",
              "READ",
              "CUSTOM"
            ]
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          },
          "readUuids": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "modifyUuids": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "readGroupUuids": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "modifyGroupUuids": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "type": "object"
      },
      "permissionOffer": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          }
        },
        "type": "object"
      },
      "permissionLanding": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          }
        },
        "type": "object"
      },
      "permissionRotation": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          }
        },
        "type": "object"
      },
      "permissionAffiliateNetwork": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          }
        },
        "type": "object"
      },
      "permissionTrafficSource": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          }
        },
        "type": "object"
      },
      "permissionDomain": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string",
            "enum": [
              "campaign",
              "offer",
              "landing",
              "rotation",
              "affiliate_network",
              "traffic_source",
              "domain",
              "default_column",
              "custom_column",
              "campaign_group",
              "landing_group",
              "offer_group",
              "rotation_group"
            ]
          }
        },
        "type": "object"
      },
      "permissionDefaultColumn": {
        "properties": {
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "permissionCustomColumn": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "permissionCampaignGroup": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "permissionOfferGroup": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "permissionLandingGroup": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "permissionRotationGroup": {
        "properties": {
          "canCreate": {
            "type": "boolean"
          },
          "accessLevel": {
            "type": "string"
          },
          "subject": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "permission": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/permissionCamp"
          },
          {
            "$ref": "#/components/schemas/permissionOffer"
          },
          {
            "$ref": "#/components/schemas/permissionLanding"
          },
          {
            "$ref": "#/components/schemas/permissionRotation"
          },
          {
            "$ref": "#/components/schemas/permissionAffiliateNetwork"
          },
          {
            "$ref": "#/components/schemas/permissionTrafficSource"
          },
          {
            "$ref": "#/components/schemas/permissionDomain"
          },
          {
            "$ref": "#/components/schemas/permissionDefaultColumn"
          },
          {
            "$ref": "#/components/schemas/permissionCustomColumn"
          },
          {
            "$ref": "#/components/schemas/permissionCampaignGroup"
          },
          {
            "$ref": "#/components/schemas/permissionLandingGroup"
          },
          {
            "$ref": "#/components/schemas/permissionOfferGroup"
          },
          {
            "$ref": "#/components/schemas/permissionRotationGroup"
          }
        ]
      },
      "ipv46": {
        "type": "string",
        "oneOf": [
          {
            "type": "string"
          },
          {
            "type": "string"
          }
        ]
      },
      "licenseInfo": {
        "properties": {
          "expires": {
            "description": "License expiration date (UTC)",
            "type": "string"
          },
          "graceExpires": {
            "description": "Grace period expiration date (UTC)",
            "type": "string"
          },
          "tier": {
            "description": "License tier",
            "type": "string",
            "enum": [
              "trial",
              "paid"
            ]
          },
          "isDisabled": {
            "description": "Whether license is disabled",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "triggerScope": {
        "required": [
          "type",
          "ids"
        ],
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "campaign",
              "landing",
              "offer",
              "traffic_source",
              "aff_network",
              "rotation"
            ]
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "minItems": 1
          }
        },
        "type": "object"
      },
      "triggerActiveTime": {
        "required": [
          "period",
          "daysOfWeek",
          "timezone"
        ],
        "properties": {
          "period": {
            "required": [
              "startHour",
              "startMinute",
              "endHour",
              "endMinute"
            ],
            "properties": {
              "startHour": {
                "type": "integer",
                "maximum": 23,
                "minimum": 0
              },
              "startMinute": {
                "type": "integer",
                "maximum": 59,
                "minimum": 0
              },
              "endHour": {
                "type": "integer",
                "maximum": 23,
                "minimum": 0
              },
              "endMinute": {
                "type": "integer",
                "maximum": 59,
                "minimum": 0
              }
            },
            "type": "object"
          },
          "daysOfWeek": {
            "description": "Days of week when the trigger is active. Empty array means every day.",
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "mon",
                "tue",
                "wed",
                "thu",
                "fri",
                "sat",
                "sun"
              ]
            },
            "uniqueItems": true
          },
          "timezone": {
            "description": "IANA timezone name. Period and daysOfWeek are evaluated in this timezone.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "triggerTimeframe": {
        "description": "Timeframe for a metric. Discriminated by `type`. Parametrized types (`last`, `interval`, `custom_date`) carry extra fields.",
        "type": "object",
        "oneOf": [
          {
            "description": "Predefined non-parametrized window.",
            "required": [
              "type"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "today",
                  "yesterday",
                  "last_2_days",
                  "last_3_days",
                  "last_7_days",
                  "last_14_days",
                  "last_30_days",
                  "this_month",
                  "last_month",
                  "this_year",
                  "last_year",
                  "all_time"
                ]
              }
            },
            "type": "object"
          },
          {
            "description": "Sliding window of the last `duration` ending now.",
            "required": [
              "type",
              "duration"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "last"
                ]
              },
              "duration": {
                "description": "Duration in `hh:mm` format.",
                "type": "string"
              }
            },
            "type": "object"
          },
          {
            "description": "Past window: [now - from .. now - to], offsets in `hh:mm`.",
            "required": [
              "type",
              "from",
              "to"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "interval"
                ]
              },
              "from": {
                "type": "string"
              },
              "to": {
                "type": "string"
              }
            },
            "type": "object"
          },
          {
            "description": "Fixed date range in trigger's timezone.",
            "required": [
              "type",
              "from",
              "to"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "custom_date"
                ]
              },
              "from": {
                "type": "string",
                "format": "date"
              },
              "to": {
                "type": "string",
                "format": "date"
              }
            },
            "type": "object"
          }
        ]
      },
      "triggerMetricOperand": {
        "description": "Used as leftOperand in a condition and as metric variant of rightOperand.",
        "required": [
          "metric",
          "timeframe"
        ],
        "properties": {
          "metric": {
            "description": "Metric identifier.",
            "type": "string",
            "enum": [
              "clicks",
              "cost",
              "roi",
              "profit",
              "leads",
              "revenue",
              "lp_ctr",
              "lp_clicks",
              "lp_views",
              "cpc",
              "cr",
              "epc",
              "bots",
              "event_1",
              "event_2",
              "event_3",
              "event_4",
              "event_5",
              "event_6",
              "event_7",
              "event_8",
              "event_9",
              "event_10",
              "event_11",
              "event_12",
              "event_13",
              "event_14",
              "event_15",
              "event_16",
              "event_17",
              "event_18",
              "event_19",
              "event_20",
              "event_21",
              "event_22",
              "event_23",
              "event_24",
              "event_25",
              "event_26",
              "event_27",
              "event_28",
              "event_29",
              "event_30"
            ]
          },
          "timeframe": {
            "$ref": "#/components/schemas/triggerTimeframe"
          }
        },
        "type": "object"
      },
      "triggerConditionOperand": {
        "description": "Right-hand operand. Use `type=scalar` for a literal number; `type=metric` for a metric reference.",
        "type": "object",
        "oneOf": [
          {
            "required": [
              "type",
              "value"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "scalar"
                ]
              },
              "value": {
                "type": "number",
                "format": "float"
              }
            },
            "type": "object"
          },
          {
            "required": [
              "type",
              "metric",
              "timeframe"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "metric"
                ]
              },
              "metric": {
                "type": "string"
              },
              "timeframe": {
                "$ref": "#/components/schemas/triggerTimeframe"
              }
            },
            "type": "object"
          }
        ]
      },
      "triggerCondition": {
        "description": "A trigger condition, discriminated by `type`. `metric` (the default when `type` is omitted) compares a metric against a scalar or another metric. `link_availability` checks whether a link is reachable — either a single `url` or, when `source` is `selected_scope`, every entity in the trigger's scope (by default at most 100 entities, and the trigger frequency at least 300 seconds — both limits are configured per deployment, so the effective values may differ); it is only allowed on `campaign`, `landing` or `offer` scope and requires `properties` to be empty.",
        "type": "object",
        "oneOf": [
          {
            "required": [
              "logicalOperator",
              "leftOperand",
              "operator",
              "rightOperand"
            ],
            "properties": {
              "type": {
                "description": "Optional; defaults to `metric`.",
                "type": "string",
                "enum": [
                  "metric"
                ]
              },
              "logicalOperator": {
                "description": "`first` for the first condition in the list, `and`/`or` for the rest.",
                "type": "string",
                "enum": [
                  "first",
                  "and",
                  "or"
                ]
              },
              "leftOperand": {
                "$ref": "#/components/schemas/triggerMetricOperand"
              },
              "operator": {
                "type": "string",
                "enum": [
                  "gt",
                  "gte",
                  "lt",
                  "lte",
                  "eq",
                  "notEq"
                ]
              },
              "rightOperand": {
                "$ref": "#/components/schemas/triggerConditionOperand"
              },
              "margin": {
                "description": "Optional threshold margin: the right operand is shifted by this amount before the comparison. Only allowed with inequality operators (gt/gte/lt/lte). No margin can be expressed as `type: none` (amount ignored), or equivalently by omitting the field / sending null. `units` and `percent` require an inequality operator. The amount is signed and carries the direction (positive raises the threshold, negative lowers it). `units` shifts additively (right + amount), `percent` multiplicatively (right * (1 + amount/100)).",
                "required": [
                  "amount",
                  "type"
                ],
                "properties": {
                  "amount": {
                    "description": "Signed shift; negative lowers the threshold. Ignored for type `none`.",
                    "type": "integer"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "none",
                      "units",
                      "percent"
                    ]
                  }
                },
                "type": "object",
                "nullable": true
              }
            },
            "type": "object"
          },
          {
            "required": [
              "type",
              "logicalOperator",
              "source",
              "expectedAvailability"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "link_availability"
                ]
              },
              "logicalOperator": {
                "description": "`first` for the first condition in the list, `and`/`or` for the rest.",
                "type": "string",
                "enum": [
                  "first",
                  "and",
                  "or"
                ]
              },
              "source": {
                "description": "What to probe. `url` — the single `url` below. `selected_scope` — the URLs of every entity in the trigger's scope (campaign links, offer URLs, non-integrated landing locations); how the per-URL results combine is set by `matchMode`. With `selected_scope` the scope may hold at most 100 entities and the trigger frequency must be at least 300 seconds by default (both limits are configured per deployment). Defaults to `url` when omitted (backward compatible).",
                "type": "string",
                "enum": [
                  "url",
                  "selected_scope"
                ]
              },
              "url": {
                "description": "Required when `source` is `url`; must be omitted when `source` is `selected_scope`.",
                "type": "string",
                "format": "uri"
              },
              "expectedAvailability": {
                "description": "Expected reachability of the URL. The condition is met when the URL's actual reachability equals this value (`true` — should be reachable, `false` — should be unreachable).",
                "type": "boolean"
              },
              "matchMode": {
                "description": "Required when `source` is `selected_scope`; must be omitted for `url`. How the per-URL results combine: `any` — met when at least one scope URL matches `expectedAvailability`; `all` — met only when every scope URL matches.",
                "type": "string",
                "enum": [
                  "any",
                  "all"
                ]
              }
            },
            "type": "object"
          }
        ]
      },
      "triggerProperty": {
        "required": [
          "logicalOperator",
          "grouping",
          "valueType"
        ],
        "properties": {
          "logicalOperator": {
            "type": "string",
            "enum": [
              "first",
              "and",
              "or"
            ]
          },
          "grouping": {
            "description": "Grouping column identifier.",
            "type": "string",
            "enum": [
              "path_id",
              "offer_id",
              "offers_group",
              "landing_id",
              "landers_group",
              "rule_id",
              "rotation_id",
              "rotations_group",
              "aff_network_id",
              "traffic_source_id",
              "city",
              "continent",
              "country",
              "region",
              "state",
              "cost",
              "ip",
              "ip_v4_range",
              "ip_v6_range",
              "is_crawler",
              "is_proxy_vpn",
              "is_datacenter",
              "is_company",
              "is_bot",
              "bot_detector",
              "user_agent",
              "domain",
              "device_type",
              "device_name",
              "device_brand",
              "device_model",
              "browser_name",
              "browser_version",
              "os_name",
              "os_version",
              "os_version_major",
              "os_version_minor",
              "language",
              "referer_domain",
              "referer",
              "day_of_week",
              "hour_of_day",
              "days",
              "weeks",
              "month",
              "conversion_status_one",
              "conversion_status_two",
              "uniqueness",
              "isp",
              "organization",
              "connection",
              "binom_protect",
              "token_value_1",
              "token_value_2",
              "token_value_3",
              "token_value_4",
              "token_value_5",
              "token_value_6",
              "token_value_7",
              "token_value_8",
              "token_value_9",
              "token_value_10",
              "token_value_11",
              "token_value_12",
              "token_value_13",
              "token_value_14",
              "token_value_15",
              "token_value_16",
              "token_value_17",
              "token_value_18",
              "token_value_19",
              "token_value_20",
              "token_value_21",
              "token_value_22",
              "token_value_23",
              "token_value_24",
              "token_value_25",
              "token_value_26",
              "token_value_27",
              "token_value_28",
              "token_value_29",
              "token_value_30",
              "event_value_1",
              "event_value_2",
              "event_value_3",
              "event_value_4",
              "event_value_5",
              "event_value_6",
              "event_value_7",
              "event_value_8",
              "event_value_9",
              "event_value_10",
              "event_value_11",
              "event_value_12",
              "event_value_13",
              "event_value_14",
              "event_value_15",
              "event_value_16",
              "event_value_17",
              "event_value_18",
              "event_value_19",
              "event_value_20",
              "event_value_21",
              "event_value_22",
              "event_value_23",
              "event_value_24",
              "event_value_25",
              "event_value_26",
              "event_value_27",
              "event_value_28",
              "event_value_29",
              "event_value_30"
            ]
          },
          "valueType": {
            "type": "string",
            "enum": [
              "all",
              "values"
            ]
          },
          "values": {
            "description": "Required when valueType=values, ignored when valueType=all. Value type depends on grouping: event_value_* and cost require numeric values; id/time/bool groupings require integer values; other groupings use strings.",
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "string"
                },
                {
                  "type": "number",
                  "format": "float"
                },
                {
                  "type": "integer"
                }
              ]
            }
          }
        },
        "type": "object"
      },
      "triggerActionEntityTarget": {
        "required": [
          "logicalOperator",
          "entityType",
          "ids"
        ],
        "properties": {
          "logicalOperator": {
            "type": "string",
            "enum": [
              "first",
              "and",
              "or"
            ]
          },
          "entityType": {
            "type": "string",
            "enum": [
              "path",
              "offer",
              "landing",
              "rule"
            ]
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "minItems": 1
          }
        },
        "type": "object"
      },
      "triggerAction": {
        "description": "Discriminated by `type`. Fields differ per action kind.",
        "type": "object",
        "oneOf": [
          {
            "description": "Change weight of matched or specific entities.",
            "required": [
              "type",
              "targetMode",
              "adjustmentMode",
              "adjustmentValue"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "change_weight"
                ]
              },
              "targetMode": {
                "type": "string",
                "enum": [
                  "matched",
                  "specific"
                ]
              },
              "adjustmentMode": {
                "type": "string",
                "enum": [
                  "set",
                  "increase_percent",
                  "decrease_percent"
                ]
              },
              "adjustmentValue": {
                "type": "number",
                "format": "float"
              },
              "targets": {
                "description": "Required when targetMode=specific; must be empty/omitted when targetMode=matched.",
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/triggerActionEntityTarget"
                }
              }
            },
            "type": "object"
          },
          {
            "description": "Enable or disable entities.",
            "required": [
              "type",
              "targetMode"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "enable",
                  "disable"
                ]
              },
              "targetMode": {
                "type": "string",
                "enum": [
                  "matched",
                  "specific"
                ]
              },
              "targets": {
                "description": "Required when targetMode=specific; must be empty/omitted when targetMode=matched.",
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/triggerActionEntityTarget"
                }
              }
            },
            "type": "object"
          },
          {
            "description": "Switch to a different rotation.",
            "required": [
              "type",
              "rotationId"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "switch_rotation"
                ]
              },
              "rotationId": {
                "type": "integer"
              }
            },
            "type": "object"
          },
          {
            "description": "Send an in-tracker notification.",
            "required": [
              "type"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "send_tracker_notification"
                ]
              },
              "message": {
                "type": "string"
              }
            },
            "type": "object"
          },
          {
            "description": "Send a Telegram notification.",
            "required": [
              "type",
              "chatId",
              "token"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "send_telegram_notification"
                ]
              },
              "message": {
                "description": "Notification body. Required unless enableSysMessage is true, in which case it may be empty.",
                "type": "string"
              },
              "chatId": {
                "description": "Telegram chat ID (numeric id or @channel handle).",
                "type": "string"
              },
              "token": {
                "description": "Telegram bot token.",
                "type": "string"
              },
              "enableSysMessage": {
                "description": "When true, the message is delivered with a system info (conditions, actions, etc) . Defaults to false.",
                "type": "boolean"
              }
            },
            "type": "object"
          },
          {
            "description": "Call an external webhook.",
            "required": [
              "type",
              "url",
              "method"
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "webhook"
                ]
              },
              "url": {
                "type": "string",
                "format": "uri"
              },
              "method": {
                "type": "string",
                "enum": [
                  "GET",
                  "POST",
                  "PUT",
                  "PATCH",
                  "DELETE",
                  "HEAD"
                ]
              },
              "headers": {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                }
              },
              "body": {
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "triggerRequest": {
        "required": [
          "name",
          "enabled",
          "disableAfterFire",
          "scope",
          "conditions",
          "properties",
          "actions",
          "frequency",
          "activeTime"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "disableAfterFire": {
            "type": "boolean"
          },
          "scope": {
            "$ref": "#/components/schemas/triggerScope"
          },
          "conditions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerCondition"
            },
            "minItems": 1
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerProperty"
            }
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerAction"
            }
          },
          "frequency": {
            "description": "Re-evaluation period in seconds. Must be > 0.",
            "type": "integer",
            "minimum": 1
          },
          "activeTime": {
            "$ref": "#/components/schemas/triggerActiveTime"
          }
        },
        "type": "object"
      },
      "triggerCreatedResponse": {
        "properties": {
          "id": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "triggerView": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "disableAfterFire": {
            "type": "boolean"
          },
          "scope": {
            "$ref": "#/components/schemas/triggerScope"
          },
          "conditions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerCondition"
            }
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerProperty"
            }
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerAction"
            }
          },
          "frequency": {
            "description": "Re-evaluation period in seconds.",
            "type": "integer"
          },
          "activeTime": {
            "$ref": "#/components/schemas/triggerActiveTime"
          },
          "lastRunAt": {
            "description": "Timestamp of the last evaluation. Null if the trigger has not run yet.",
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "type": "object"
      },
      "triggerShortView": {
        "properties": {
          "id": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "enabled": {
            "type": "boolean"
          },
          "lastActionAt": {
            "description": "Timestamp of the last run in tracker timezone. Null if the trigger has not run yet.",
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "type": "object"
      },
      "triggerListResponse": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/triggerShortView"
        }
      },
      "triggerPerformanceResult": {
        "properties": {
          "query": {
            "type": "string"
          },
          "duration_ms": {
            "type": "integer"
          },
          "memory_usage_bytes": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "triggerPerformanceResponse": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/triggerPerformanceResult"
        }
      },
      "triggerLogRow": {
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "checkedAt": {
            "type": "string",
            "format": "date-time"
          },
          "triggerId": {
            "type": "integer"
          },
          "conditionStatus": {
            "type": "string"
          },
          "actionStatus": {
            "type": "string"
          },
          "actionTypes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "conditionDurationMs": {
            "type": "integer"
          },
          "actionDurationMs": {
            "type": "integer"
          },
          "matchedEntitiesJson": {
            "type": "string"
          },
          "actionResultsJson": {
            "type": "string"
          },
          "errorMessage": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "triggerLogsMeta": {
        "properties": {
          "limit": {
            "type": "integer"
          },
          "offset": {
            "type": "integer"
          },
          "total": {
            "type": "integer"
          }
        },
        "type": "object"
      },
      "triggerLogsResponse": {
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/triggerLogRow"
            }
          },
          "meta": {
            "$ref": "#/components/schemas/triggerLogsMeta"
          }
        },
        "type": "object"
      }
    },
    "responses": {
      "identity": {
        "description": "Identity",
        "content": {
          "application/json": {
            "schema": {
              "properties": {
                "identity": {
                  "properties": {
                    "userId": {
                      "type": "string"
                    },
                    "login": {
                      "type": "string"
                    },
                    "createdAt": {
                      "type": "string",
                      "format": "date-time"
                    }
                  },
                  "type": "object"
                }
              },
              "type": "object"
            }
          }
        }
      }
    },
    "parameters": {
      "triggerLogTriggerId": {
        "name": "triggerId",
        "in": "query",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 0
        }
      },
      "triggerLogConditionStatus": {
        "name": "conditionStatus",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "met",
            "not_met",
            "error"
          ]
        }
      },
      "triggerLogActionType": {
        "name": "actionType",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "change_weight",
            "enable",
            "disable",
            "switch_rotation",
            "send_tracker_notification",
            "send_telegram_notification",
            "webhook"
          ]
        }
      },
      "name": {
        "name": "name",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "ISPname": {
        "name": "name",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "grouping": {
        "name": "grouping",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "host": {
        "name": "host",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "userId": {
        "name": "userId",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "status": {
        "name": "status",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "all",
            "active",
            "with_traffic",
            "deleted"
          ]
        }
      },
      "tagSubject": {
        "name": "subject",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "campaign",
            "landing",
            "offer",
            "rotation",
            "affiliate_network",
            "traffic_source"
          ]
        }
      },
      "noteSubject": {
        "name": "subject",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "campaign",
            "landing",
            "offer",
            "rotation",
            "affiliate_network",
            "traffic_source",
            "domain",
            "trigger"
          ]
        }
      },
      "geo": {
        "name": "geo[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "language": {
        "name": "language",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "languages": {
        "name": "languages[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "datePreset": {
        "name": "datePreset",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "today",
            "yesterday",
            "this_week",
            "last_week",
            "last_2_days",
            "last_3_days",
            "last_7_days",
            "last_14_days",
            "last_30_days",
            "this_month",
            "last_month",
            "this_year",
            "last_year",
            "all_time",
            "custom_time"
          ]
        }
      },
      "dateClickPreset": {
        "name": "preset",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "full",
            "custom_time"
          ]
        }
      },
      "dateFrom": {
        "name": "dateFrom",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "cursor": {
        "name": "cursor",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "from": {
        "name": "from",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "to": {
        "name": "to",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "dateTo": {
        "name": "dateTo",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "timezone": {
        "name": "timezone",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string"
        }
      },
      "sortColumn": {
        "name": "sortColumn",
        "in": "query",
        "required": true,
        "schema": {
          "description": "Column key from /public/api/v1/columns",
          "type": "string"
        }
      },
      "offerAlternativeSortColumn": {
        "name": "sortColumn",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "id",
            "name",
            "countryCode",
            "groupUuid",
            "affiliateNetworkId",
            "payout",
            ""
          ]
        }
      },
      "excludeIdsRanges": {
        "name": "excludeIdsRanges",
        "in": "query",
        "description": "Compact list of ids to exclude: comma-separated singletons and inclusive ranges. Replaces excludeIds[] when provided.",
        "required": false,
        "schema": {
          "type": "string"
        }
      },
      "excludeIdsBitmap": {
        "name": "excludeIdsBitmap",
        "in": "query",
        "description": "(URL-safe) base64-encoded bitmap of ids to exclude: a set bit at position p (LSB-first per byte) marks id p. Takes precedence over excludeIdsRanges and excludeIds[] when provided.",
        "required": false,
        "schema": {
          "type": "string"
        }
      },
      "userLogSortColumn": {
        "name": "sortColumn",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "id",
            "user_id",
            "user_login",
            "aggregate_id",
            "event_type",
            "occurred_on",
            ""
          ]
        }
      },
      "conversionLogTimezone": {
        "name": "timezone",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string"
        }
      },
      "conversionLogSortColumn": {
        "name": "sortColumn",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "conversed_at",
            "conversion_id",
            "url",
            "ip",
            "type",
            "response_http_code",
            ""
          ]
        }
      },
      "conversionLogSortType": {
        "name": "sortType",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "asc",
            "desc"
          ]
        }
      },
      "sortType": {
        "name": "sortType",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "asc",
            "desc"
          ]
        }
      },
      "limit": {
        "name": "limit",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "offset": {
        "name": "offset",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "tags": {
        "name": "tags[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "httpCodes": {
        "name": "httpCodes",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "responseType": {
        "name": "responseType",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "success",
            "fail"
          ]
        }
      },
      "excludeDeleted": {
        "name": "excludeDeleted",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "type": {
        "name": "type",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "search": {
        "name": "search",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "groupUuid": {
        "name": "groupUuid",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "searchPart": {
        "name": "searchPart",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "groupIds": {
        "name": "groupIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "groupUuids": {
        "name": "groupUuids[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "accessLevel": {
        "name": "accessLevel",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "READ",
            "MODIFY"
          ]
        }
      },
      "trafficSourceId": {
        "name": "trafficSourceId",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "trafficSourceIds": {
        "name": "trafficSourceIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "excludeRotationId": {
        "name": "excludeRotationId",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "rotationId": {
        "name": "rotationId",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "campaignId": {
        "name": "campaignId",
        "in": "query",
        "schema": {
          "type": "integer"
        }
      },
      "clickId": {
        "name": "clickId",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "urlPart": {
        "name": "urlPart",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "conversionType": {
        "name": "conversionType",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "ALL",
            "IN",
            "OUT"
          ]
        }
      },
      "campaignIds": {
        "name": "campaignIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "int"
          }
        }
      },
      "ids": {
        "name": "ids[]",
        "in": "query",
        "required": true,
        "schema": {
          "type": "array",
          "items": {
            "type": "int"
          }
        }
      },
      "clickIds": {
        "name": "clickIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "offerIds": {
        "name": "offerIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "int"
          }
        }
      },
      "directUrls": {
        "name": "directUrls[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "campaignOfferIds": {
        "name": "campaignOfferIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "int"
          }
        }
      },
      "geoIds": {
        "name": "geoIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "csvSource": {
        "name": "csvSource",
        "in": "query",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "clicklog",
            "conversions"
          ]
        }
      },
      "groupings": {
        "name": "groupings[]",
        "in": "query",
        "required": true,
        "schema": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "binomProtect",
              "campaign",
              "campaignsGroup",
              "trafficSource",
              "path",
              "offer",
              "offersGroup",
              "landing",
              "landingsGroup",
              "rule",
              "rotation",
              "rotationsGroup",
              "affiliateNetwork",
              "geoCity",
              "geoContinent",
              "geoCountry",
              "geoRegion",
              "geoState",
              "clickCost",
              "ip",
              "ipRange1",
              "ipRange2",
              "ipV6Range64",
              "ipV6Range56",
              "ipV6Range48",
              "ipV6Range32",
              "crawler",
              "proxyVPN",
              "datacenter",
              "company",
              "bot",
              "botDetector",
              "userAgent",
              "domain",
              "deviceType",
              "deviceName",
              "deviceBrand",
              "deviceModel",
              "deviceResolution",
              "browserName",
              "browserVersion",
              "osName",
              "osVersion",
              "osVersionMajor",
              "osVersionMinor",
              "languageCode",
              "refererDomain",
              "refererUrl",
              "dayOfWeek",
              "hourOfDay",
              "days",
              "weeks",
              "month",
              "conversionStatusOne",
              "conversionStatusTwo",
              "uniqueness",
              "ispName",
              "organizationName",
              "connectionType",
              "token_1",
              "token_2",
              "token_3",
              "token_4",
              "token_5",
              "token_6",
              "token_7",
              "token_8",
              "token_9",
              "token_10",
              "token_11",
              "token_12",
              "token_13",
              "token_14",
              "token_15",
              "token_16",
              "token_17",
              "token_18",
              "token_19",
              "token_20",
              "token_21",
              "token_22",
              "token_23",
              "token_24",
              "token_25",
              "token_26",
              "token_27",
              "token_28",
              "token_29",
              "token_30",
              "event_1",
              "event_2",
              "event_3",
              "event_4",
              "event_5",
              "event_6",
              "event_7",
              "event_8",
              "event_9",
              "event_10",
              "event_11",
              "event_12",
              "event_13",
              "event_14",
              "event_15",
              "event_16",
              "event_17",
              "event_18",
              "event_19",
              "event_20",
              "event_21",
              "event_22",
              "event_23",
              "event_24",
              "event_25",
              "event_26",
              "event_27",
              "event_28",
              "event_29",
              "event_30"
            ]
          }
        }
      },
      "subject": {
        "name": "subject",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "campaign",
            "offer",
            "landing",
            "affiliateNetwork",
            "rotation",
            "trafficSource"
          ]
        }
      },
      "page": {
        "name": "page",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string",
          "enum": [
            "campaign",
            "offer",
            "landing",
            "affiliateNetwork",
            "rotation",
            "trafficSource"
          ]
        }
      },
      "nameFilter": {
        "name": "nameFilter",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "markFilter": {
        "name": "markFilter",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "simpleFilterId": {
        "name": "simpleFilterId",
        "in": "query",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "simpleFilter": {
        "name": "simpleFilter",
        "in": "query",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "simpleFilterForValidation": {
        "name": "simpleFilter",
        "in": "query",
        "schema": {
          "type": "string",
          "nullable": false
        }
      },
      "affiliateNetworkId": {
        "name": "affiliateNetworkId",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "affiliateNetworkIds": {
        "name": "affiliateNetworkIds[]",
        "in": "query",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "filter": {
        "name": "filter",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "countryCode": {
        "name": "countryCode",
        "in": "query",
        "schema": {
          "type": "string"
        }
      },
      "direction": {
        "name": "direction",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "next",
            "prev"
          ]
        }
      },
      "includeCampaignsWithoutGroup": {
        "name": "includeCampaignsWithoutGroup",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "1",
            "0"
          ]
        }
      },
      "includeCampaignsWithDeletedTrafficSource": {
        "name": "includeCampaignsWithDeletedTrafficSource",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "1",
            "0"
          ]
        }
      },
      "hideBots": {
        "name": "hideBots",
        "in": "query",
        "schema": {
          "type": "string",
          "enum": [
            "1",
            "0"
          ]
        }
      }
    },
    "securitySchemes": {
      "apiKey": {
        "type": "apiKey",
        "name": "Api-Key",
        "in": "header"
      }
    }
  },
  "security": [
    {
      "apiKey": []
    }
  ],
  "tags": [
    {
      "name": "Affiliate Network"
    },
    {
      "name": "Clicks"
    },
    {
      "name": "Info stats"
    },
    {
      "name": "Report"
    },
    {
      "name": "Report groupings"
    },
    {
      "name": "Report Mark"
    },
    {
      "name": "Report Presets"
    },
    {
      "name": "Report Simple filters"
    },
    {
      "name": "Stats"
    },
    {
      "name": "Identity API key"
    },
    {
      "name": "Binom Protect"
    },
    {
      "name": "CSV"
    },
    {
      "name": "Campaign"
    },
    {
      "name": "Rotation"
    },
    {
      "name": "Offer"
    },
    {
      "name": "ClickInfo"
    },
    {
      "name": "ClickLog"
    },
    {
      "name": "Clickbank"
    },
    {
      "name": "Column"
    },
    {
      "name": "Conversions"
    },
    {
      "name": "Device"
    },
    {
      "name": "Domain"
    },
    {
      "name": "Identity"
    },
    {
      "name": "Files"
    },
    {
      "name": "User"
    },
    {
      "name": "Geo"
    },
    {
      "name": "Group"
    },
    {
      "name": "ISP"
    },
    {
      "name": "Landing"
    },
    {
      "name": "License"
    },
    {
      "name": "MagicChecker"
    },
    {
      "name": "Migrator"
    },
    {
      "name": "Monitor"
    },
    {
      "name": "Note"
    },
    {
      "name": "Postback Processing Rules"
    },
    {
      "name": "Settings"
    },
    {
      "name": "Shared"
    },
    {
      "name": "Tag"
    },
    {
      "name": "TrafficSource"
    },
    {
      "name": "Trends"
    },
    {
      "name": "Trigger"
    },
    {
      "name": "UserAccess"
    },
    {
      "name": "AuthorizationSubject"
    },
    {
      "name": "Auth"
    }
  ]
}