{
  // CGRateS Configuration file
  // used for apis/preload_it_test.go

  "logger": {
		"level": 7
	},

  "db": {
    "db_conns": {
      "*default": {
        "db_type": "*internal",
         "opts":{
          "internalDBRewriteInterval": "0s",
          "internalDBDumpInterval": "0s"
    }
        }
    }
  },
  
  "loaders": [
    {
      "id": "Rates_Loader",
      "enabled": true,
      "dry_run": false,
      "tenant": "cgrates.org",
      "run_delay": "0",
      "lockfile_path": ".cgr.lock",
      "caches_conns": ["*internal"],
      "field_separator": ",",
      "tp_in_dir": "/tmp/RatesIn",
      "tp_out_dir": "/tmp/RatesOut",
      "data":[
        {
          "type": "*rate_profiles",
          "file_name": "Rates.csv",
          "fields": [
            {"tag": "Tenant", "path": "Tenant", "type": "*variable", "value": "~*req.0", "mandatory": true},
            {"tag": "ID", "path": "ID", "type": "*variable", "value": "~*req.1", "mandatory": true},
            {"tag": "FilterIDs", "path": "FilterIDs", "type": "*variable", "value": "~*req.2"},
            {"tag": "Weights", "path": "Weights", "type": "*variable", "value": "~*req.3"},
            {"tag": "MinCost", "path": "MinCost", "type": "*variable", "value": "~*req.4"},
            {"tag": "MaxCost", "path": "MaxCost", "type": "*variable", "value": "~*req.5"},
            {"tag": "MaxCostStrategy", "path": "MaxCostStrategy", "type": "*variable", "value": "~*req.6"},
            // {"tag": "RateID", "path": "RateID", "type": "*variable", "value": "~*req.7"},
            {"tag": "RateFilterIDs", "path": "Rates[<~*req.7>].FilterIDs", "type": "*variable", "value": "~*req.8"},
            {"tag": "RateActivationTimes", "path": "Rates[<~*req.7>].ActivationTimes", "type": "*variable", "value": "~*req.9"},
            {"tag": "RateWeights", "path": "Rates[<~*req.7>].Weights", "type": "*variable", "value": "~*req.10"},
            {"tag": "RateBlocker", "path": "Rates[<~*req.7>].Blocker", "type": "*variable", "value": "~*req.11"},
            {"tag": "RateIntervalStart", "path": "Rates[<~*req.7>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*req.12","new_branch":true},
            {"tag": "RateFixedFee", "path": "Rates[<~*req.7>].IntervalRates.FixedFee", "type": "*variable", "value": "~*req.13"},
                      {"tag": "RateRecurrentFee", "path": "Rates[<~*req.7>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*req.14"},
            {"tag": "RateUnit", "path": "Rates[<~*req.7>].IntervalRates.Unit", "type": "*variable", "value": "~*req.15"},
            {"tag": "RateIncrement", "path": "Rates[<~*req.7>].IntervalRates.Increment", "type": "*variable", "value": "~*req.16"},
          ],
        },
      ],
    },
    {
      "id": "Accounts_Loader",
      "enabled": true,
      "dry_run": false,
      "tenant": "cgrates.org",
      "run_delay": "0",
      "lockfile_path": ".cgr2.lock",
      "caches_conns": ["*internal"],
      "field_separator": ",",
      "tp_in_dir": "/tmp/AccountsIn",
      "tp_out_dir": "/tmp/AccountsOut",
      "data":[
        {
          "type": "*accounts",
          "file_name": "Accounts.csv",
          "fields": [
            {"tag": "Tenant", "path": "Tenant", "type": "*variable", "value": "~*req.0", "mandatory": true},
            {"tag": "ID", "path": "ID", "type": "*variable", "value": "~*req.1", "mandatory": true},
            {"tag": "FilterIDs", "path": "FilterIDs", "type": "*variable", "value": "~*req.2"},
            {"tag": "Weights", "path": "Weights", "type": "*variable", "value": "~*req.3"},
            {"tag": "Blockers", "path": "Blockers", "type": "*variable", "value": "~*req.4"},
            {"tag": "Opts", "path": "Opts", "type": "*variable", "value": "~*req.5"},
            // {"tag": "BalanceID", "path": "Balances.ID", "type": "*variable", "value": "~*req.6"},
            {"tag": "BalanceFilterIDs", "path": "Balances[<~*req.6>].FilterIDs", "type": "*variable", "value": "~*req.7"},
            {"tag": "BalanceWeights", "path": "Balances[<~*req.6>].Weights", "type": "*variable", "value": "~*req.8"},
            {"tag": "BalanceBlockers", "path": "Balances[<~*req.6>].Blockers", "type": "*variable", "value": "~*req.9"},
            {"tag": "BalanceType", "path": "Balances[<~*req.6>].Type", "type": "*variable", "value": "~*req.10"},
            {"tag": "BalanceUnits", "path": "Balances[<~*req.6>].Units", "type": "*variable", "value": "~*req.11"},
            {"tag": "BalanceUnitFactors", "path": "Balances[<~*req.6>].UnitFactors", "type": "*variable", "value": "~*req.12"},
            {"tag": "BalanceOpts", "path": "Balances[<~*req.6>].Opts", "type": "*variable", "value": "~*req.13"},
            {"tag": "BalanceCostIncrements", "path": "Balances[<~*req.6>].CostIncrements", "type": "*variable", "value": "~*req.14"},
            {"tag": "BalanceAttributeIDs", "path": "Balances[<~*req.6>].AttributeIDs", "type": "*variable", "value": "~*req.15"},
            {"tag": "BalanceRateProfileIDs", "path": "Balances[<~*req.6>].RateProfileIDs", "type": "*variable", "value": "~*req.16"},
            {"tag": "ThresholdIDs", "path": "ThresholdIDs", "type": "*variable", "value": "~*req.17"},
          ],
        },
      ],
    },
    {
      "id": "Actions_Loader",
      "enabled": true,
      "dry_run": false,
      "tenant": "cgrates.org",
      "run_delay": "0",
      "lockfile_path": ".cgr3.lock",
      "caches_conns": ["*internal"],
      "field_separator": ",",
      "tp_in_dir": "/tmp/ActionsIn",
      "tp_out_dir": "/tmp/ActionsOut",
      "data":[
        {
          "type": "*action_profiles",
          "file_name": "Actions.csv",
          "fields": [
            {"tag": "Tenant", "path": "Tenant", "type": "*variable", "value": "~*req.0", "mandatory": true},
            {"tag": "ID", "path": "ID", "type": "*variable", "value": "~*req.1", "mandatory": true},
            {"tag": "FilterIDs", "path": "FilterIDs", "type": "*variable", "value": "~*req.2"},
            {"tag": "Weights", "path": "Weights", "type": "*variable", "value": "~*req.3"},
            {"tag": "Blockers", "path": "Blockers", "type": "*variable", "value": "~*req.4"},
            {"tag": "Schedule", "path": "Schedule", "type": "*variable", "value": "~*req.5"},
            // {"tag": "TargetType", "path": "TargetType", "type": "*variable", "value": "~*req.6"},
            {"tag": "TargetIDs", "path": "Targets[<~*req.6>]", "type": "*variable", "value": "~*req.7"},
            // {"tag": "ActionID", "path": "Actions.ID", "type": "*variable", "value": "~*req.8","new_branch":true},
            {"tag": "ActionFilterIDs", "path": "Actions[<~*req.8>].FilterIDs", "type": "*variable", "value": "~*req.9", "filters": ["*notempty:~*req.8:"]},
            {"tag": "ActionTTL", "path": "Actions[<~*req.8>].TTL", "type": "*variable", "value": "~*req.10", "filters": ["*notempty:~*req.8:"]},
            {"tag": "ActionType", "path": "Actions[<~*req.8>].Type", "type": "*variable", "value": "~*req.11", "filters": ["*notempty:~*req.8:"]},
            {"tag": "ActionOpts", "path": "Actions[<~*req.8>].Opts", "type": "*variable", "value": "~*req.12", "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionWeights", "path": "Actions[<~*req.8>].Weights", "type": "*variable", "value": "~*req.13", "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionBlockers", "path": "Actions[<~*req.8>].Blockers", "type": "*variable", "value": "~*req.14", "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionDiktatsID", "path": "Actions[<~*req.8>].Diktats.ID", "type": "*variable", "value": "~*req.15","new_branch":true, "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionDiktatsFilterIDs", "path": "Actions[<~*req.8>].Diktats.FilterIDs", "type": "*variable", "value": "~*req.16", "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionDiktatsOpts", "path": "Actions[<~*req.8>].Diktats.Opts", "type": "*variable", "value": "~*req.17", "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionDiktatsWeights", "path": "Actions[<~*req.8>].Diktats.Weights", "type": "*variable", "value": "~*req.18", "filters": ["*notempty:~*req.8:"]},
					{"tag": "ActionDiktatsBlockers", "path": "Actions[<~*req.8>].Diktats.Blockers", "type": "*variable", "value": "~*req.19", "filters": ["*notempty:~*req.8:"]},
          ],
        },
      ],
    }
  ],

  "admins": {
    "enabled": true,
  },


}
