@wevion/cli 1.0.3188 → 1.0.3191
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/openapi.json +1975 -1810
- package/package.json +1 -1
package/openapi.json
CHANGED
|
@@ -134064,6 +134064,15 @@
|
|
|
134064
134064
|
"name": "connected_only",
|
|
134065
134065
|
"required": false,
|
|
134066
134066
|
"description": "Restrict account options to the ad accounts flagged as connected."
|
|
134067
|
+
},
|
|
134068
|
+
{
|
|
134069
|
+
"schema": {
|
|
134070
|
+
"type": "boolean"
|
|
134071
|
+
},
|
|
134072
|
+
"in": "query",
|
|
134073
|
+
"name": "include_without_data",
|
|
134074
|
+
"required": false,
|
|
134075
|
+
"description": "Also return the connected ad accounts that have no insight row yet. For pickers that choose a publishing destination, where a brand new account is a legitimate answer."
|
|
134067
134076
|
}
|
|
134068
134077
|
],
|
|
134069
134078
|
"security": [
|
|
@@ -178693,344 +178702,368 @@
|
|
|
178693
178702
|
}
|
|
178694
178703
|
},
|
|
178695
178704
|
"actions": {
|
|
178696
|
-
"description": "Ordered list of actions
|
|
178705
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
178697
178706
|
"type": "array",
|
|
178698
178707
|
"items": {
|
|
178699
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
178700
178708
|
"anyOf": [
|
|
178701
178709
|
{
|
|
178702
|
-
"
|
|
178703
|
-
"
|
|
178704
|
-
|
|
178705
|
-
"type"
|
|
178706
|
-
],
|
|
178707
|
-
"properties": {
|
|
178708
|
-
"type": {
|
|
178709
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
178710
|
-
"type": "string",
|
|
178711
|
-
"enum": [
|
|
178712
|
-
"pause"
|
|
178713
|
-
]
|
|
178714
|
-
},
|
|
178715
|
-
"params": {
|
|
178716
|
-
"$comment": "json-value",
|
|
178717
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178718
|
-
}
|
|
178719
|
-
},
|
|
178720
|
-
"title": "RuleActionPause"
|
|
178721
|
-
},
|
|
178722
|
-
{
|
|
178723
|
-
"additionalProperties": false,
|
|
178724
|
-
"type": "object",
|
|
178725
|
-
"required": [
|
|
178726
|
-
"type"
|
|
178727
|
-
],
|
|
178728
|
-
"properties": {
|
|
178729
|
-
"type": {
|
|
178730
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
178731
|
-
"type": "string",
|
|
178732
|
-
"enum": [
|
|
178733
|
-
"activate"
|
|
178734
|
-
]
|
|
178735
|
-
},
|
|
178736
|
-
"params": {
|
|
178737
|
-
"$comment": "json-value",
|
|
178738
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178739
|
-
}
|
|
178740
|
-
},
|
|
178741
|
-
"title": "RuleActionActivate"
|
|
178742
|
-
},
|
|
178743
|
-
{
|
|
178744
|
-
"additionalProperties": false,
|
|
178745
|
-
"type": "object",
|
|
178746
|
-
"required": [
|
|
178747
|
-
"type"
|
|
178748
|
-
],
|
|
178749
|
-
"properties": {
|
|
178750
|
-
"type": {
|
|
178751
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
178752
|
-
"type": "string",
|
|
178753
|
-
"enum": [
|
|
178754
|
-
"increase_budget_pct"
|
|
178755
|
-
]
|
|
178756
|
-
},
|
|
178757
|
-
"params": {
|
|
178710
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
178711
|
+
"anyOf": [
|
|
178712
|
+
{
|
|
178758
178713
|
"additionalProperties": false,
|
|
178759
178714
|
"type": "object",
|
|
178715
|
+
"required": [
|
|
178716
|
+
"type"
|
|
178717
|
+
],
|
|
178760
178718
|
"properties": {
|
|
178761
|
-
"
|
|
178762
|
-
"description": "
|
|
178763
|
-
"
|
|
178764
|
-
"
|
|
178765
|
-
|
|
178719
|
+
"type": {
|
|
178720
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
178721
|
+
"type": "string",
|
|
178722
|
+
"enum": [
|
|
178723
|
+
"pause"
|
|
178724
|
+
]
|
|
178766
178725
|
},
|
|
178767
|
-
"
|
|
178768
|
-
"
|
|
178769
|
-
"
|
|
178770
|
-
"maximum": 100,
|
|
178771
|
-
"type": "number"
|
|
178726
|
+
"params": {
|
|
178727
|
+
"$comment": "json-value",
|
|
178728
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178772
178729
|
}
|
|
178773
|
-
}
|
|
178774
|
-
|
|
178775
|
-
},
|
|
178776
|
-
"title": "RuleActionIncreaseBudget"
|
|
178777
|
-
},
|
|
178778
|
-
{
|
|
178779
|
-
"additionalProperties": false,
|
|
178780
|
-
"type": "object",
|
|
178781
|
-
"required": [
|
|
178782
|
-
"type"
|
|
178783
|
-
],
|
|
178784
|
-
"properties": {
|
|
178785
|
-
"type": {
|
|
178786
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
178787
|
-
"type": "string",
|
|
178788
|
-
"enum": [
|
|
178789
|
-
"decrease_budget_pct"
|
|
178790
|
-
]
|
|
178730
|
+
},
|
|
178731
|
+
"title": "RuleActionPause"
|
|
178791
178732
|
},
|
|
178792
|
-
|
|
178733
|
+
{
|
|
178793
178734
|
"additionalProperties": false,
|
|
178794
178735
|
"type": "object",
|
|
178736
|
+
"required": [
|
|
178737
|
+
"type"
|
|
178738
|
+
],
|
|
178795
178739
|
"properties": {
|
|
178796
|
-
"
|
|
178797
|
-
"description": "
|
|
178798
|
-
"minimum": 1,
|
|
178799
|
-
"maximum": 100,
|
|
178800
|
-
"type": "number"
|
|
178801
|
-
},
|
|
178802
|
-
"pct": {
|
|
178803
|
-
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
178804
|
-
"minimum": 1,
|
|
178805
|
-
"maximum": 100,
|
|
178806
|
-
"type": "number"
|
|
178807
|
-
}
|
|
178808
|
-
}
|
|
178809
|
-
}
|
|
178810
|
-
},
|
|
178811
|
-
"title": "RuleActionDecreaseBudget"
|
|
178812
|
-
},
|
|
178813
|
-
{
|
|
178814
|
-
"additionalProperties": false,
|
|
178815
|
-
"type": "object",
|
|
178816
|
-
"required": [
|
|
178817
|
-
"type"
|
|
178818
|
-
],
|
|
178819
|
-
"properties": {
|
|
178820
|
-
"type": {
|
|
178821
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
178822
|
-
"type": "string",
|
|
178823
|
-
"enum": [
|
|
178824
|
-
"relaunch"
|
|
178825
|
-
]
|
|
178826
|
-
},
|
|
178827
|
-
"params": {
|
|
178828
|
-
"$comment": "json-value",
|
|
178829
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178830
|
-
}
|
|
178831
|
-
},
|
|
178832
|
-
"title": "RuleActionRelaunch"
|
|
178833
|
-
},
|
|
178834
|
-
{
|
|
178835
|
-
"additionalProperties": false,
|
|
178836
|
-
"type": "object",
|
|
178837
|
-
"required": [
|
|
178838
|
-
"type"
|
|
178839
|
-
],
|
|
178840
|
-
"properties": {
|
|
178841
|
-
"type": {
|
|
178842
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
178843
|
-
"type": "string",
|
|
178844
|
-
"enum": [
|
|
178845
|
-
"notify_only"
|
|
178846
|
-
]
|
|
178847
|
-
},
|
|
178848
|
-
"params": {
|
|
178849
|
-
"$comment": "json-value",
|
|
178850
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178851
|
-
}
|
|
178852
|
-
},
|
|
178853
|
-
"title": "RuleActionNotifyOnly"
|
|
178854
|
-
},
|
|
178855
|
-
{
|
|
178856
|
-
"additionalProperties": false,
|
|
178857
|
-
"type": "object",
|
|
178858
|
-
"required": [
|
|
178859
|
-
"type",
|
|
178860
|
-
"platform",
|
|
178861
|
-
"entity_level"
|
|
178862
|
-
],
|
|
178863
|
-
"properties": {
|
|
178864
|
-
"type": {
|
|
178865
|
-
"type": "string",
|
|
178866
|
-
"enum": [
|
|
178867
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
178868
|
-
]
|
|
178869
|
-
},
|
|
178870
|
-
"platform": {
|
|
178871
|
-
"anyOf": [
|
|
178872
|
-
{
|
|
178740
|
+
"type": {
|
|
178741
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
178873
178742
|
"type": "string",
|
|
178874
178743
|
"enum": [
|
|
178875
|
-
"
|
|
178744
|
+
"activate"
|
|
178876
178745
|
]
|
|
178877
178746
|
},
|
|
178878
|
-
{
|
|
178747
|
+
"params": {
|
|
178748
|
+
"$comment": "json-value",
|
|
178749
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178750
|
+
}
|
|
178751
|
+
},
|
|
178752
|
+
"title": "RuleActionActivate"
|
|
178753
|
+
},
|
|
178754
|
+
{
|
|
178755
|
+
"additionalProperties": false,
|
|
178756
|
+
"type": "object",
|
|
178757
|
+
"required": [
|
|
178758
|
+
"type"
|
|
178759
|
+
],
|
|
178760
|
+
"properties": {
|
|
178761
|
+
"type": {
|
|
178762
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
178879
178763
|
"type": "string",
|
|
178880
178764
|
"enum": [
|
|
178881
|
-
"
|
|
178765
|
+
"increase_budget_pct"
|
|
178882
178766
|
]
|
|
178883
178767
|
},
|
|
178884
|
-
{
|
|
178768
|
+
"params": {
|
|
178769
|
+
"additionalProperties": false,
|
|
178770
|
+
"type": "object",
|
|
178771
|
+
"properties": {
|
|
178772
|
+
"percentage": {
|
|
178773
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
178774
|
+
"minimum": 1,
|
|
178775
|
+
"maximum": 1000,
|
|
178776
|
+
"type": "number"
|
|
178777
|
+
},
|
|
178778
|
+
"pct": {
|
|
178779
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
178780
|
+
"minimum": 1,
|
|
178781
|
+
"maximum": 1000,
|
|
178782
|
+
"type": "number"
|
|
178783
|
+
}
|
|
178784
|
+
}
|
|
178785
|
+
}
|
|
178786
|
+
},
|
|
178787
|
+
"title": "RuleActionIncreaseBudget"
|
|
178788
|
+
},
|
|
178789
|
+
{
|
|
178790
|
+
"additionalProperties": false,
|
|
178791
|
+
"type": "object",
|
|
178792
|
+
"required": [
|
|
178793
|
+
"type"
|
|
178794
|
+
],
|
|
178795
|
+
"properties": {
|
|
178796
|
+
"type": {
|
|
178797
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
178885
178798
|
"type": "string",
|
|
178886
178799
|
"enum": [
|
|
178887
|
-
"
|
|
178800
|
+
"decrease_budget_pct"
|
|
178888
178801
|
]
|
|
178889
178802
|
},
|
|
178890
|
-
{
|
|
178803
|
+
"params": {
|
|
178804
|
+
"additionalProperties": false,
|
|
178805
|
+
"type": "object",
|
|
178806
|
+
"properties": {
|
|
178807
|
+
"percentage": {
|
|
178808
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
178809
|
+
"minimum": 1,
|
|
178810
|
+
"maximum": 100,
|
|
178811
|
+
"type": "number"
|
|
178812
|
+
},
|
|
178813
|
+
"pct": {
|
|
178814
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
178815
|
+
"minimum": 1,
|
|
178816
|
+
"maximum": 100,
|
|
178817
|
+
"type": "number"
|
|
178818
|
+
}
|
|
178819
|
+
}
|
|
178820
|
+
}
|
|
178821
|
+
},
|
|
178822
|
+
"title": "RuleActionDecreaseBudget"
|
|
178823
|
+
},
|
|
178824
|
+
{
|
|
178825
|
+
"additionalProperties": false,
|
|
178826
|
+
"type": "object",
|
|
178827
|
+
"required": [
|
|
178828
|
+
"type"
|
|
178829
|
+
],
|
|
178830
|
+
"properties": {
|
|
178831
|
+
"type": {
|
|
178832
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
178891
178833
|
"type": "string",
|
|
178892
178834
|
"enum": [
|
|
178893
|
-
"
|
|
178835
|
+
"relaunch"
|
|
178894
178836
|
]
|
|
178895
178837
|
},
|
|
178896
|
-
{
|
|
178838
|
+
"params": {
|
|
178839
|
+
"$comment": "json-value",
|
|
178840
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178841
|
+
}
|
|
178842
|
+
},
|
|
178843
|
+
"title": "RuleActionRelaunch"
|
|
178844
|
+
},
|
|
178845
|
+
{
|
|
178846
|
+
"additionalProperties": false,
|
|
178847
|
+
"type": "object",
|
|
178848
|
+
"required": [
|
|
178849
|
+
"type"
|
|
178850
|
+
],
|
|
178851
|
+
"properties": {
|
|
178852
|
+
"type": {
|
|
178853
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
178897
178854
|
"type": "string",
|
|
178898
178855
|
"enum": [
|
|
178899
|
-
"
|
|
178856
|
+
"notify_only"
|
|
178900
178857
|
]
|
|
178858
|
+
},
|
|
178859
|
+
"params": {
|
|
178860
|
+
"$comment": "json-value",
|
|
178861
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
178901
178862
|
}
|
|
178902
|
-
|
|
178863
|
+
},
|
|
178864
|
+
"title": "RuleActionNotifyOnly"
|
|
178903
178865
|
},
|
|
178904
|
-
|
|
178905
|
-
"
|
|
178906
|
-
"
|
|
178907
|
-
|
|
178908
|
-
|
|
178909
|
-
|
|
178910
|
-
|
|
178911
|
-
|
|
178912
|
-
|
|
178913
|
-
|
|
178914
|
-
"additionalProperties": false,
|
|
178915
|
-
"type": "object",
|
|
178916
|
-
"required": [
|
|
178917
|
-
"type",
|
|
178918
|
-
"platform",
|
|
178919
|
-
"entity_level",
|
|
178920
|
-
"pct"
|
|
178921
|
-
],
|
|
178922
|
-
"properties": {
|
|
178923
|
-
"type": {
|
|
178924
|
-
"anyOf": [
|
|
178925
|
-
{
|
|
178866
|
+
{
|
|
178867
|
+
"additionalProperties": false,
|
|
178868
|
+
"type": "object",
|
|
178869
|
+
"required": [
|
|
178870
|
+
"type",
|
|
178871
|
+
"platform",
|
|
178872
|
+
"entity_level"
|
|
178873
|
+
],
|
|
178874
|
+
"properties": {
|
|
178875
|
+
"type": {
|
|
178926
178876
|
"type": "string",
|
|
178927
178877
|
"enum": [
|
|
178928
|
-
"
|
|
178878
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
178929
178879
|
]
|
|
178930
178880
|
},
|
|
178931
|
-
{
|
|
178881
|
+
"platform": {
|
|
178882
|
+
"anyOf": [
|
|
178883
|
+
{
|
|
178884
|
+
"type": "string",
|
|
178885
|
+
"enum": [
|
|
178886
|
+
"META"
|
|
178887
|
+
]
|
|
178888
|
+
},
|
|
178889
|
+
{
|
|
178890
|
+
"type": "string",
|
|
178891
|
+
"enum": [
|
|
178892
|
+
"GOOGLE"
|
|
178893
|
+
]
|
|
178894
|
+
},
|
|
178895
|
+
{
|
|
178896
|
+
"type": "string",
|
|
178897
|
+
"enum": [
|
|
178898
|
+
"TIKTOK"
|
|
178899
|
+
]
|
|
178900
|
+
},
|
|
178901
|
+
{
|
|
178902
|
+
"type": "string",
|
|
178903
|
+
"enum": [
|
|
178904
|
+
"TABOOLA"
|
|
178905
|
+
]
|
|
178906
|
+
},
|
|
178907
|
+
{
|
|
178908
|
+
"type": "string",
|
|
178909
|
+
"enum": [
|
|
178910
|
+
"LINKEDIN"
|
|
178911
|
+
]
|
|
178912
|
+
}
|
|
178913
|
+
]
|
|
178914
|
+
},
|
|
178915
|
+
"entity_level": {
|
|
178932
178916
|
"type": "string",
|
|
178933
178917
|
"enum": [
|
|
178934
|
-
"
|
|
178918
|
+
"campaign"
|
|
178935
178919
|
]
|
|
178936
178920
|
}
|
|
178937
|
-
|
|
178921
|
+
},
|
|
178922
|
+
"title": "RuleActionPauseTopSpendCampaign"
|
|
178938
178923
|
},
|
|
178939
|
-
|
|
178940
|
-
"
|
|
178941
|
-
|
|
178942
|
-
|
|
178943
|
-
|
|
178944
|
-
|
|
178924
|
+
{
|
|
178925
|
+
"additionalProperties": false,
|
|
178926
|
+
"type": "object",
|
|
178927
|
+
"required": [
|
|
178928
|
+
"type",
|
|
178929
|
+
"platform",
|
|
178930
|
+
"entity_level",
|
|
178931
|
+
"pct"
|
|
178932
|
+
],
|
|
178933
|
+
"properties": {
|
|
178934
|
+
"type": {
|
|
178935
|
+
"anyOf": [
|
|
178936
|
+
{
|
|
178937
|
+
"type": "string",
|
|
178938
|
+
"enum": [
|
|
178939
|
+
"INCREASE_BUDGET_PCT"
|
|
178940
|
+
]
|
|
178941
|
+
},
|
|
178942
|
+
{
|
|
178943
|
+
"type": "string",
|
|
178944
|
+
"enum": [
|
|
178945
|
+
"DECREASE_BUDGET_PCT"
|
|
178946
|
+
]
|
|
178947
|
+
}
|
|
178945
178948
|
]
|
|
178946
178949
|
},
|
|
178947
|
-
{
|
|
178948
|
-
"
|
|
178949
|
-
|
|
178950
|
-
|
|
178950
|
+
"platform": {
|
|
178951
|
+
"anyOf": [
|
|
178952
|
+
{
|
|
178953
|
+
"type": "string",
|
|
178954
|
+
"enum": [
|
|
178955
|
+
"META"
|
|
178956
|
+
]
|
|
178957
|
+
},
|
|
178958
|
+
{
|
|
178959
|
+
"type": "string",
|
|
178960
|
+
"enum": [
|
|
178961
|
+
"GOOGLE"
|
|
178962
|
+
]
|
|
178963
|
+
},
|
|
178964
|
+
{
|
|
178965
|
+
"type": "string",
|
|
178966
|
+
"enum": [
|
|
178967
|
+
"TIKTOK"
|
|
178968
|
+
]
|
|
178969
|
+
},
|
|
178970
|
+
{
|
|
178971
|
+
"type": "string",
|
|
178972
|
+
"enum": [
|
|
178973
|
+
"TABOOLA"
|
|
178974
|
+
]
|
|
178975
|
+
},
|
|
178976
|
+
{
|
|
178977
|
+
"type": "string",
|
|
178978
|
+
"enum": [
|
|
178979
|
+
"LINKEDIN"
|
|
178980
|
+
]
|
|
178981
|
+
}
|
|
178951
178982
|
]
|
|
178952
178983
|
},
|
|
178953
|
-
{
|
|
178984
|
+
"entity_level": {
|
|
178954
178985
|
"type": "string",
|
|
178955
178986
|
"enum": [
|
|
178956
|
-
"
|
|
178987
|
+
"campaign"
|
|
178957
178988
|
]
|
|
178958
178989
|
},
|
|
178959
|
-
{
|
|
178990
|
+
"pct": {
|
|
178991
|
+
"minimum": 1,
|
|
178992
|
+
"maximum": 100,
|
|
178993
|
+
"type": "number"
|
|
178994
|
+
}
|
|
178995
|
+
},
|
|
178996
|
+
"title": "RuleActionCrossPlatformBudgetPct"
|
|
178997
|
+
},
|
|
178998
|
+
{
|
|
178999
|
+
"additionalProperties": false,
|
|
179000
|
+
"type": "object",
|
|
179001
|
+
"required": [
|
|
179002
|
+
"type",
|
|
179003
|
+
"channel",
|
|
179004
|
+
"message_template"
|
|
179005
|
+
],
|
|
179006
|
+
"properties": {
|
|
179007
|
+
"type": {
|
|
178960
179008
|
"type": "string",
|
|
178961
179009
|
"enum": [
|
|
178962
|
-
"
|
|
179010
|
+
"NOTIFY_CHANNEL"
|
|
178963
179011
|
]
|
|
178964
179012
|
},
|
|
178965
|
-
{
|
|
178966
|
-
"
|
|
178967
|
-
|
|
178968
|
-
|
|
179013
|
+
"channel": {
|
|
179014
|
+
"anyOf": [
|
|
179015
|
+
{
|
|
179016
|
+
"type": "string",
|
|
179017
|
+
"enum": [
|
|
179018
|
+
"in_app"
|
|
179019
|
+
]
|
|
179020
|
+
},
|
|
179021
|
+
{
|
|
179022
|
+
"type": "string",
|
|
179023
|
+
"enum": [
|
|
179024
|
+
"email"
|
|
179025
|
+
]
|
|
179026
|
+
},
|
|
179027
|
+
{
|
|
179028
|
+
"type": "string",
|
|
179029
|
+
"enum": [
|
|
179030
|
+
"telegram"
|
|
179031
|
+
]
|
|
179032
|
+
}
|
|
178969
179033
|
]
|
|
179034
|
+
},
|
|
179035
|
+
"message_template": {
|
|
179036
|
+
"minLength": 1,
|
|
179037
|
+
"maxLength": 500,
|
|
179038
|
+
"type": "string"
|
|
178970
179039
|
}
|
|
178971
|
-
|
|
178972
|
-
|
|
178973
|
-
"entity_level": {
|
|
178974
|
-
"type": "string",
|
|
178975
|
-
"enum": [
|
|
178976
|
-
"campaign"
|
|
178977
|
-
]
|
|
178978
|
-
},
|
|
178979
|
-
"pct": {
|
|
178980
|
-
"minimum": 1,
|
|
178981
|
-
"maximum": 100,
|
|
178982
|
-
"type": "number"
|
|
179040
|
+
},
|
|
179041
|
+
"title": "RuleActionNotifyChannel"
|
|
178983
179042
|
}
|
|
178984
|
-
|
|
178985
|
-
"title": "
|
|
179043
|
+
],
|
|
179044
|
+
"title": "RuleAction"
|
|
178986
179045
|
},
|
|
178987
179046
|
{
|
|
178988
|
-
"additionalProperties":
|
|
179047
|
+
"additionalProperties": true,
|
|
179048
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
178989
179049
|
"type": "object",
|
|
178990
179050
|
"required": [
|
|
178991
|
-
"type"
|
|
178992
|
-
"channel",
|
|
178993
|
-
"message_template"
|
|
179051
|
+
"type"
|
|
178994
179052
|
],
|
|
178995
179053
|
"properties": {
|
|
178996
179054
|
"type": {
|
|
178997
|
-
"
|
|
178998
|
-
"enum": [
|
|
178999
|
-
"NOTIFY_CHANNEL"
|
|
179000
|
-
]
|
|
179001
|
-
},
|
|
179002
|
-
"channel": {
|
|
179003
|
-
"anyOf": [
|
|
179004
|
-
{
|
|
179005
|
-
"type": "string",
|
|
179006
|
-
"enum": [
|
|
179007
|
-
"in_app"
|
|
179008
|
-
]
|
|
179009
|
-
},
|
|
179010
|
-
{
|
|
179011
|
-
"type": "string",
|
|
179012
|
-
"enum": [
|
|
179013
|
-
"email"
|
|
179014
|
-
]
|
|
179015
|
-
},
|
|
179016
|
-
{
|
|
179017
|
-
"type": "string",
|
|
179018
|
-
"enum": [
|
|
179019
|
-
"telegram"
|
|
179020
|
-
]
|
|
179021
|
-
}
|
|
179022
|
-
]
|
|
179023
|
-
},
|
|
179024
|
-
"message_template": {
|
|
179025
|
-
"minLength": 1,
|
|
179026
|
-
"maxLength": 500,
|
|
179055
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
179027
179056
|
"type": "string"
|
|
179057
|
+
},
|
|
179058
|
+
"params": {
|
|
179059
|
+
"$comment": "json-value",
|
|
179060
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
179028
179061
|
}
|
|
179029
179062
|
},
|
|
179030
|
-
"title": "
|
|
179063
|
+
"title": "RuleActionLegacy"
|
|
179031
179064
|
}
|
|
179032
179065
|
],
|
|
179033
|
-
"title": "
|
|
179066
|
+
"title": "RuleActionStored"
|
|
179034
179067
|
}
|
|
179035
179068
|
},
|
|
179036
179069
|
"schedule_type": {
|
|
@@ -180236,15 +180269,15 @@
|
|
|
180236
180269
|
"type": "object",
|
|
180237
180270
|
"properties": {
|
|
180238
180271
|
"percentage": {
|
|
180239
|
-
"description": "Percent
|
|
180272
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
180240
180273
|
"minimum": 1,
|
|
180241
|
-
"maximum":
|
|
180274
|
+
"maximum": 1000,
|
|
180242
180275
|
"type": "number"
|
|
180243
180276
|
},
|
|
180244
180277
|
"pct": {
|
|
180245
180278
|
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
180246
180279
|
"minimum": 1,
|
|
180247
|
-
"maximum":
|
|
180280
|
+
"maximum": 1000,
|
|
180248
180281
|
"type": "number"
|
|
180249
180282
|
}
|
|
180250
180283
|
}
|
|
@@ -181499,330 +181532,352 @@
|
|
|
181499
181532
|
}
|
|
181500
181533
|
},
|
|
181501
181534
|
"actions": {
|
|
181502
|
-
"description": "Ordered list of actions
|
|
181535
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
181503
181536
|
"type": "array",
|
|
181504
181537
|
"items": {
|
|
181505
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
181506
181538
|
"anyOf": [
|
|
181507
181539
|
{
|
|
181508
|
-
"
|
|
181509
|
-
"
|
|
181510
|
-
|
|
181511
|
-
"type"
|
|
181512
|
-
],
|
|
181513
|
-
"properties": {
|
|
181514
|
-
"type": {
|
|
181515
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
181516
|
-
"type": "string",
|
|
181517
|
-
"enum": [
|
|
181518
|
-
"pause"
|
|
181519
|
-
]
|
|
181520
|
-
},
|
|
181521
|
-
"params": {
|
|
181522
|
-
"$comment": "json-value",
|
|
181523
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181524
|
-
}
|
|
181525
|
-
}
|
|
181526
|
-
},
|
|
181527
|
-
{
|
|
181528
|
-
"additionalProperties": false,
|
|
181529
|
-
"type": "object",
|
|
181530
|
-
"required": [
|
|
181531
|
-
"type"
|
|
181532
|
-
],
|
|
181533
|
-
"properties": {
|
|
181534
|
-
"type": {
|
|
181535
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
181536
|
-
"type": "string",
|
|
181537
|
-
"enum": [
|
|
181538
|
-
"activate"
|
|
181539
|
-
]
|
|
181540
|
-
},
|
|
181541
|
-
"params": {
|
|
181542
|
-
"$comment": "json-value",
|
|
181543
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181544
|
-
}
|
|
181545
|
-
}
|
|
181546
|
-
},
|
|
181547
|
-
{
|
|
181548
|
-
"additionalProperties": false,
|
|
181549
|
-
"type": "object",
|
|
181550
|
-
"required": [
|
|
181551
|
-
"type"
|
|
181552
|
-
],
|
|
181553
|
-
"properties": {
|
|
181554
|
-
"type": {
|
|
181555
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
181556
|
-
"type": "string",
|
|
181557
|
-
"enum": [
|
|
181558
|
-
"increase_budget_pct"
|
|
181559
|
-
]
|
|
181560
|
-
},
|
|
181561
|
-
"params": {
|
|
181540
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
181541
|
+
"anyOf": [
|
|
181542
|
+
{
|
|
181562
181543
|
"additionalProperties": false,
|
|
181563
181544
|
"type": "object",
|
|
181545
|
+
"required": [
|
|
181546
|
+
"type"
|
|
181547
|
+
],
|
|
181564
181548
|
"properties": {
|
|
181565
|
-
"
|
|
181566
|
-
"description": "
|
|
181567
|
-
"
|
|
181568
|
-
"
|
|
181569
|
-
|
|
181549
|
+
"type": {
|
|
181550
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
181551
|
+
"type": "string",
|
|
181552
|
+
"enum": [
|
|
181553
|
+
"pause"
|
|
181554
|
+
]
|
|
181570
181555
|
},
|
|
181571
|
-
"
|
|
181572
|
-
"
|
|
181573
|
-
"
|
|
181574
|
-
"maximum": 100,
|
|
181575
|
-
"type": "number"
|
|
181556
|
+
"params": {
|
|
181557
|
+
"$comment": "json-value",
|
|
181558
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181576
181559
|
}
|
|
181577
181560
|
}
|
|
181578
|
-
}
|
|
181579
|
-
}
|
|
181580
|
-
},
|
|
181581
|
-
{
|
|
181582
|
-
"additionalProperties": false,
|
|
181583
|
-
"type": "object",
|
|
181584
|
-
"required": [
|
|
181585
|
-
"type"
|
|
181586
|
-
],
|
|
181587
|
-
"properties": {
|
|
181588
|
-
"type": {
|
|
181589
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
181590
|
-
"type": "string",
|
|
181591
|
-
"enum": [
|
|
181592
|
-
"decrease_budget_pct"
|
|
181593
|
-
]
|
|
181594
181561
|
},
|
|
181595
|
-
|
|
181562
|
+
{
|
|
181596
181563
|
"additionalProperties": false,
|
|
181597
181564
|
"type": "object",
|
|
181565
|
+
"required": [
|
|
181566
|
+
"type"
|
|
181567
|
+
],
|
|
181598
181568
|
"properties": {
|
|
181599
|
-
"
|
|
181600
|
-
"description": "
|
|
181601
|
-
"
|
|
181602
|
-
"
|
|
181603
|
-
|
|
181569
|
+
"type": {
|
|
181570
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
181571
|
+
"type": "string",
|
|
181572
|
+
"enum": [
|
|
181573
|
+
"activate"
|
|
181574
|
+
]
|
|
181604
181575
|
},
|
|
181605
|
-
"
|
|
181606
|
-
"
|
|
181607
|
-
"
|
|
181608
|
-
"maximum": 100,
|
|
181609
|
-
"type": "number"
|
|
181576
|
+
"params": {
|
|
181577
|
+
"$comment": "json-value",
|
|
181578
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181610
181579
|
}
|
|
181611
181580
|
}
|
|
181612
|
-
}
|
|
181613
|
-
}
|
|
181614
|
-
},
|
|
181615
|
-
{
|
|
181616
|
-
"additionalProperties": false,
|
|
181617
|
-
"type": "object",
|
|
181618
|
-
"required": [
|
|
181619
|
-
"type"
|
|
181620
|
-
],
|
|
181621
|
-
"properties": {
|
|
181622
|
-
"type": {
|
|
181623
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
181624
|
-
"type": "string",
|
|
181625
|
-
"enum": [
|
|
181626
|
-
"relaunch"
|
|
181627
|
-
]
|
|
181628
181581
|
},
|
|
181629
|
-
|
|
181630
|
-
"
|
|
181631
|
-
"
|
|
181632
|
-
|
|
181633
|
-
|
|
181634
|
-
|
|
181635
|
-
|
|
181636
|
-
|
|
181637
|
-
|
|
181638
|
-
"required": [
|
|
181639
|
-
"type"
|
|
181640
|
-
],
|
|
181641
|
-
"properties": {
|
|
181642
|
-
"type": {
|
|
181643
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
181644
|
-
"type": "string",
|
|
181645
|
-
"enum": [
|
|
181646
|
-
"notify_only"
|
|
181647
|
-
]
|
|
181648
|
-
},
|
|
181649
|
-
"params": {
|
|
181650
|
-
"$comment": "json-value",
|
|
181651
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181652
|
-
}
|
|
181653
|
-
}
|
|
181654
|
-
},
|
|
181655
|
-
{
|
|
181656
|
-
"additionalProperties": false,
|
|
181657
|
-
"type": "object",
|
|
181658
|
-
"required": [
|
|
181659
|
-
"type",
|
|
181660
|
-
"platform",
|
|
181661
|
-
"entity_level"
|
|
181662
|
-
],
|
|
181663
|
-
"properties": {
|
|
181664
|
-
"type": {
|
|
181665
|
-
"type": "string",
|
|
181666
|
-
"enum": [
|
|
181667
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
181668
|
-
]
|
|
181669
|
-
},
|
|
181670
|
-
"platform": {
|
|
181671
|
-
"anyOf": [
|
|
181672
|
-
{
|
|
181582
|
+
{
|
|
181583
|
+
"additionalProperties": false,
|
|
181584
|
+
"type": "object",
|
|
181585
|
+
"required": [
|
|
181586
|
+
"type"
|
|
181587
|
+
],
|
|
181588
|
+
"properties": {
|
|
181589
|
+
"type": {
|
|
181590
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
181673
181591
|
"type": "string",
|
|
181674
181592
|
"enum": [
|
|
181675
|
-
"
|
|
181593
|
+
"increase_budget_pct"
|
|
181676
181594
|
]
|
|
181677
181595
|
},
|
|
181678
|
-
{
|
|
181596
|
+
"params": {
|
|
181597
|
+
"additionalProperties": false,
|
|
181598
|
+
"type": "object",
|
|
181599
|
+
"properties": {
|
|
181600
|
+
"percentage": {
|
|
181601
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
181602
|
+
"minimum": 1,
|
|
181603
|
+
"maximum": 1000,
|
|
181604
|
+
"type": "number"
|
|
181605
|
+
},
|
|
181606
|
+
"pct": {
|
|
181607
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
181608
|
+
"minimum": 1,
|
|
181609
|
+
"maximum": 1000,
|
|
181610
|
+
"type": "number"
|
|
181611
|
+
}
|
|
181612
|
+
}
|
|
181613
|
+
}
|
|
181614
|
+
}
|
|
181615
|
+
},
|
|
181616
|
+
{
|
|
181617
|
+
"additionalProperties": false,
|
|
181618
|
+
"type": "object",
|
|
181619
|
+
"required": [
|
|
181620
|
+
"type"
|
|
181621
|
+
],
|
|
181622
|
+
"properties": {
|
|
181623
|
+
"type": {
|
|
181624
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
181679
181625
|
"type": "string",
|
|
181680
181626
|
"enum": [
|
|
181681
|
-
"
|
|
181627
|
+
"decrease_budget_pct"
|
|
181682
181628
|
]
|
|
181683
181629
|
},
|
|
181684
|
-
{
|
|
181630
|
+
"params": {
|
|
181631
|
+
"additionalProperties": false,
|
|
181632
|
+
"type": "object",
|
|
181633
|
+
"properties": {
|
|
181634
|
+
"percentage": {
|
|
181635
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
181636
|
+
"minimum": 1,
|
|
181637
|
+
"maximum": 100,
|
|
181638
|
+
"type": "number"
|
|
181639
|
+
},
|
|
181640
|
+
"pct": {
|
|
181641
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
181642
|
+
"minimum": 1,
|
|
181643
|
+
"maximum": 100,
|
|
181644
|
+
"type": "number"
|
|
181645
|
+
}
|
|
181646
|
+
}
|
|
181647
|
+
}
|
|
181648
|
+
}
|
|
181649
|
+
},
|
|
181650
|
+
{
|
|
181651
|
+
"additionalProperties": false,
|
|
181652
|
+
"type": "object",
|
|
181653
|
+
"required": [
|
|
181654
|
+
"type"
|
|
181655
|
+
],
|
|
181656
|
+
"properties": {
|
|
181657
|
+
"type": {
|
|
181658
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
181685
181659
|
"type": "string",
|
|
181686
181660
|
"enum": [
|
|
181687
|
-
"
|
|
181661
|
+
"relaunch"
|
|
181688
181662
|
]
|
|
181689
181663
|
},
|
|
181690
|
-
{
|
|
181664
|
+
"params": {
|
|
181665
|
+
"$comment": "json-value",
|
|
181666
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181667
|
+
}
|
|
181668
|
+
}
|
|
181669
|
+
},
|
|
181670
|
+
{
|
|
181671
|
+
"additionalProperties": false,
|
|
181672
|
+
"type": "object",
|
|
181673
|
+
"required": [
|
|
181674
|
+
"type"
|
|
181675
|
+
],
|
|
181676
|
+
"properties": {
|
|
181677
|
+
"type": {
|
|
181678
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
181691
181679
|
"type": "string",
|
|
181692
181680
|
"enum": [
|
|
181693
|
-
"
|
|
181681
|
+
"notify_only"
|
|
181694
181682
|
]
|
|
181695
181683
|
},
|
|
181696
|
-
{
|
|
181697
|
-
"
|
|
181698
|
-
"
|
|
181699
|
-
"LINKEDIN"
|
|
181700
|
-
]
|
|
181684
|
+
"params": {
|
|
181685
|
+
"$comment": "json-value",
|
|
181686
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181701
181687
|
}
|
|
181702
|
-
|
|
181688
|
+
}
|
|
181703
181689
|
},
|
|
181704
|
-
|
|
181705
|
-
"
|
|
181706
|
-
"
|
|
181707
|
-
|
|
181708
|
-
|
|
181709
|
-
|
|
181710
|
-
|
|
181711
|
-
|
|
181712
|
-
|
|
181713
|
-
|
|
181714
|
-
"type": "object",
|
|
181715
|
-
"required": [
|
|
181716
|
-
"type",
|
|
181717
|
-
"platform",
|
|
181718
|
-
"entity_level",
|
|
181719
|
-
"pct"
|
|
181720
|
-
],
|
|
181721
|
-
"properties": {
|
|
181722
|
-
"type": {
|
|
181723
|
-
"anyOf": [
|
|
181724
|
-
{
|
|
181690
|
+
{
|
|
181691
|
+
"additionalProperties": false,
|
|
181692
|
+
"type": "object",
|
|
181693
|
+
"required": [
|
|
181694
|
+
"type",
|
|
181695
|
+
"platform",
|
|
181696
|
+
"entity_level"
|
|
181697
|
+
],
|
|
181698
|
+
"properties": {
|
|
181699
|
+
"type": {
|
|
181725
181700
|
"type": "string",
|
|
181726
181701
|
"enum": [
|
|
181727
|
-
"
|
|
181702
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
181728
181703
|
]
|
|
181729
181704
|
},
|
|
181730
|
-
{
|
|
181705
|
+
"platform": {
|
|
181706
|
+
"anyOf": [
|
|
181707
|
+
{
|
|
181708
|
+
"type": "string",
|
|
181709
|
+
"enum": [
|
|
181710
|
+
"META"
|
|
181711
|
+
]
|
|
181712
|
+
},
|
|
181713
|
+
{
|
|
181714
|
+
"type": "string",
|
|
181715
|
+
"enum": [
|
|
181716
|
+
"GOOGLE"
|
|
181717
|
+
]
|
|
181718
|
+
},
|
|
181719
|
+
{
|
|
181720
|
+
"type": "string",
|
|
181721
|
+
"enum": [
|
|
181722
|
+
"TIKTOK"
|
|
181723
|
+
]
|
|
181724
|
+
},
|
|
181725
|
+
{
|
|
181726
|
+
"type": "string",
|
|
181727
|
+
"enum": [
|
|
181728
|
+
"TABOOLA"
|
|
181729
|
+
]
|
|
181730
|
+
},
|
|
181731
|
+
{
|
|
181732
|
+
"type": "string",
|
|
181733
|
+
"enum": [
|
|
181734
|
+
"LINKEDIN"
|
|
181735
|
+
]
|
|
181736
|
+
}
|
|
181737
|
+
]
|
|
181738
|
+
},
|
|
181739
|
+
"entity_level": {
|
|
181731
181740
|
"type": "string",
|
|
181732
181741
|
"enum": [
|
|
181733
|
-
"
|
|
181742
|
+
"campaign"
|
|
181734
181743
|
]
|
|
181735
181744
|
}
|
|
181736
|
-
|
|
181745
|
+
}
|
|
181737
181746
|
},
|
|
181738
|
-
|
|
181739
|
-
"
|
|
181740
|
-
|
|
181741
|
-
|
|
181742
|
-
|
|
181743
|
-
|
|
181747
|
+
{
|
|
181748
|
+
"additionalProperties": false,
|
|
181749
|
+
"type": "object",
|
|
181750
|
+
"required": [
|
|
181751
|
+
"type",
|
|
181752
|
+
"platform",
|
|
181753
|
+
"entity_level",
|
|
181754
|
+
"pct"
|
|
181755
|
+
],
|
|
181756
|
+
"properties": {
|
|
181757
|
+
"type": {
|
|
181758
|
+
"anyOf": [
|
|
181759
|
+
{
|
|
181760
|
+
"type": "string",
|
|
181761
|
+
"enum": [
|
|
181762
|
+
"INCREASE_BUDGET_PCT"
|
|
181763
|
+
]
|
|
181764
|
+
},
|
|
181765
|
+
{
|
|
181766
|
+
"type": "string",
|
|
181767
|
+
"enum": [
|
|
181768
|
+
"DECREASE_BUDGET_PCT"
|
|
181769
|
+
]
|
|
181770
|
+
}
|
|
181744
181771
|
]
|
|
181745
181772
|
},
|
|
181746
|
-
{
|
|
181747
|
-
"
|
|
181748
|
-
|
|
181749
|
-
|
|
181773
|
+
"platform": {
|
|
181774
|
+
"anyOf": [
|
|
181775
|
+
{
|
|
181776
|
+
"type": "string",
|
|
181777
|
+
"enum": [
|
|
181778
|
+
"META"
|
|
181779
|
+
]
|
|
181780
|
+
},
|
|
181781
|
+
{
|
|
181782
|
+
"type": "string",
|
|
181783
|
+
"enum": [
|
|
181784
|
+
"GOOGLE"
|
|
181785
|
+
]
|
|
181786
|
+
},
|
|
181787
|
+
{
|
|
181788
|
+
"type": "string",
|
|
181789
|
+
"enum": [
|
|
181790
|
+
"TIKTOK"
|
|
181791
|
+
]
|
|
181792
|
+
},
|
|
181793
|
+
{
|
|
181794
|
+
"type": "string",
|
|
181795
|
+
"enum": [
|
|
181796
|
+
"TABOOLA"
|
|
181797
|
+
]
|
|
181798
|
+
},
|
|
181799
|
+
{
|
|
181800
|
+
"type": "string",
|
|
181801
|
+
"enum": [
|
|
181802
|
+
"LINKEDIN"
|
|
181803
|
+
]
|
|
181804
|
+
}
|
|
181750
181805
|
]
|
|
181751
181806
|
},
|
|
181752
|
-
{
|
|
181807
|
+
"entity_level": {
|
|
181753
181808
|
"type": "string",
|
|
181754
181809
|
"enum": [
|
|
181755
|
-
"
|
|
181810
|
+
"campaign"
|
|
181756
181811
|
]
|
|
181757
181812
|
},
|
|
181758
|
-
{
|
|
181813
|
+
"pct": {
|
|
181814
|
+
"minimum": 1,
|
|
181815
|
+
"maximum": 100,
|
|
181816
|
+
"type": "number"
|
|
181817
|
+
}
|
|
181818
|
+
}
|
|
181819
|
+
},
|
|
181820
|
+
{
|
|
181821
|
+
"additionalProperties": false,
|
|
181822
|
+
"type": "object",
|
|
181823
|
+
"required": [
|
|
181824
|
+
"type",
|
|
181825
|
+
"channel",
|
|
181826
|
+
"message_template"
|
|
181827
|
+
],
|
|
181828
|
+
"properties": {
|
|
181829
|
+
"type": {
|
|
181759
181830
|
"type": "string",
|
|
181760
181831
|
"enum": [
|
|
181761
|
-
"
|
|
181832
|
+
"NOTIFY_CHANNEL"
|
|
181762
181833
|
]
|
|
181763
181834
|
},
|
|
181764
|
-
{
|
|
181765
|
-
"
|
|
181766
|
-
|
|
181767
|
-
|
|
181835
|
+
"channel": {
|
|
181836
|
+
"anyOf": [
|
|
181837
|
+
{
|
|
181838
|
+
"type": "string",
|
|
181839
|
+
"enum": [
|
|
181840
|
+
"in_app"
|
|
181841
|
+
]
|
|
181842
|
+
},
|
|
181843
|
+
{
|
|
181844
|
+
"type": "string",
|
|
181845
|
+
"enum": [
|
|
181846
|
+
"email"
|
|
181847
|
+
]
|
|
181848
|
+
},
|
|
181849
|
+
{
|
|
181850
|
+
"type": "string",
|
|
181851
|
+
"enum": [
|
|
181852
|
+
"telegram"
|
|
181853
|
+
]
|
|
181854
|
+
}
|
|
181768
181855
|
]
|
|
181856
|
+
},
|
|
181857
|
+
"message_template": {
|
|
181858
|
+
"minLength": 1,
|
|
181859
|
+
"maxLength": 500,
|
|
181860
|
+
"type": "string"
|
|
181769
181861
|
}
|
|
181770
|
-
|
|
181771
|
-
},
|
|
181772
|
-
"entity_level": {
|
|
181773
|
-
"type": "string",
|
|
181774
|
-
"enum": [
|
|
181775
|
-
"campaign"
|
|
181776
|
-
]
|
|
181777
|
-
},
|
|
181778
|
-
"pct": {
|
|
181779
|
-
"minimum": 1,
|
|
181780
|
-
"maximum": 100,
|
|
181781
|
-
"type": "number"
|
|
181862
|
+
}
|
|
181782
181863
|
}
|
|
181783
|
-
|
|
181864
|
+
]
|
|
181784
181865
|
},
|
|
181785
181866
|
{
|
|
181786
|
-
"additionalProperties":
|
|
181867
|
+
"additionalProperties": true,
|
|
181868
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
181787
181869
|
"type": "object",
|
|
181788
181870
|
"required": [
|
|
181789
|
-
"type"
|
|
181790
|
-
"channel",
|
|
181791
|
-
"message_template"
|
|
181871
|
+
"type"
|
|
181792
181872
|
],
|
|
181793
181873
|
"properties": {
|
|
181794
181874
|
"type": {
|
|
181795
|
-
"
|
|
181796
|
-
"enum": [
|
|
181797
|
-
"NOTIFY_CHANNEL"
|
|
181798
|
-
]
|
|
181799
|
-
},
|
|
181800
|
-
"channel": {
|
|
181801
|
-
"anyOf": [
|
|
181802
|
-
{
|
|
181803
|
-
"type": "string",
|
|
181804
|
-
"enum": [
|
|
181805
|
-
"in_app"
|
|
181806
|
-
]
|
|
181807
|
-
},
|
|
181808
|
-
{
|
|
181809
|
-
"type": "string",
|
|
181810
|
-
"enum": [
|
|
181811
|
-
"email"
|
|
181812
|
-
]
|
|
181813
|
-
},
|
|
181814
|
-
{
|
|
181815
|
-
"type": "string",
|
|
181816
|
-
"enum": [
|
|
181817
|
-
"telegram"
|
|
181818
|
-
]
|
|
181819
|
-
}
|
|
181820
|
-
]
|
|
181821
|
-
},
|
|
181822
|
-
"message_template": {
|
|
181823
|
-
"minLength": 1,
|
|
181824
|
-
"maxLength": 500,
|
|
181875
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
181825
181876
|
"type": "string"
|
|
181877
|
+
},
|
|
181878
|
+
"params": {
|
|
181879
|
+
"$comment": "json-value",
|
|
181880
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
181826
181881
|
}
|
|
181827
181882
|
}
|
|
181828
181883
|
}
|
|
@@ -183007,330 +183062,352 @@
|
|
|
183007
183062
|
}
|
|
183008
183063
|
},
|
|
183009
183064
|
"actions": {
|
|
183010
|
-
"description": "Ordered list of actions
|
|
183065
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
183011
183066
|
"type": "array",
|
|
183012
183067
|
"items": {
|
|
183013
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
183014
183068
|
"anyOf": [
|
|
183015
183069
|
{
|
|
183016
|
-
"
|
|
183017
|
-
"
|
|
183018
|
-
|
|
183019
|
-
"type"
|
|
183020
|
-
],
|
|
183021
|
-
"properties": {
|
|
183022
|
-
"type": {
|
|
183023
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
183024
|
-
"type": "string",
|
|
183025
|
-
"enum": [
|
|
183026
|
-
"pause"
|
|
183027
|
-
]
|
|
183028
|
-
},
|
|
183029
|
-
"params": {
|
|
183030
|
-
"$comment": "json-value",
|
|
183031
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183032
|
-
}
|
|
183033
|
-
}
|
|
183034
|
-
},
|
|
183035
|
-
{
|
|
183036
|
-
"additionalProperties": false,
|
|
183037
|
-
"type": "object",
|
|
183038
|
-
"required": [
|
|
183039
|
-
"type"
|
|
183040
|
-
],
|
|
183041
|
-
"properties": {
|
|
183042
|
-
"type": {
|
|
183043
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
183044
|
-
"type": "string",
|
|
183045
|
-
"enum": [
|
|
183046
|
-
"activate"
|
|
183047
|
-
]
|
|
183048
|
-
},
|
|
183049
|
-
"params": {
|
|
183050
|
-
"$comment": "json-value",
|
|
183051
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183052
|
-
}
|
|
183053
|
-
}
|
|
183054
|
-
},
|
|
183055
|
-
{
|
|
183056
|
-
"additionalProperties": false,
|
|
183057
|
-
"type": "object",
|
|
183058
|
-
"required": [
|
|
183059
|
-
"type"
|
|
183060
|
-
],
|
|
183061
|
-
"properties": {
|
|
183062
|
-
"type": {
|
|
183063
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
183064
|
-
"type": "string",
|
|
183065
|
-
"enum": [
|
|
183066
|
-
"increase_budget_pct"
|
|
183067
|
-
]
|
|
183068
|
-
},
|
|
183069
|
-
"params": {
|
|
183070
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
183071
|
+
"anyOf": [
|
|
183072
|
+
{
|
|
183070
183073
|
"additionalProperties": false,
|
|
183071
183074
|
"type": "object",
|
|
183075
|
+
"required": [
|
|
183076
|
+
"type"
|
|
183077
|
+
],
|
|
183072
183078
|
"properties": {
|
|
183073
|
-
"
|
|
183074
|
-
"description": "
|
|
183075
|
-
"
|
|
183076
|
-
"
|
|
183077
|
-
|
|
183079
|
+
"type": {
|
|
183080
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
183081
|
+
"type": "string",
|
|
183082
|
+
"enum": [
|
|
183083
|
+
"pause"
|
|
183084
|
+
]
|
|
183078
183085
|
},
|
|
183079
|
-
"
|
|
183080
|
-
"
|
|
183081
|
-
"
|
|
183082
|
-
"maximum": 100,
|
|
183083
|
-
"type": "number"
|
|
183086
|
+
"params": {
|
|
183087
|
+
"$comment": "json-value",
|
|
183088
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183084
183089
|
}
|
|
183085
183090
|
}
|
|
183086
|
-
}
|
|
183087
|
-
}
|
|
183088
|
-
},
|
|
183089
|
-
{
|
|
183090
|
-
"additionalProperties": false,
|
|
183091
|
-
"type": "object",
|
|
183092
|
-
"required": [
|
|
183093
|
-
"type"
|
|
183094
|
-
],
|
|
183095
|
-
"properties": {
|
|
183096
|
-
"type": {
|
|
183097
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
183098
|
-
"type": "string",
|
|
183099
|
-
"enum": [
|
|
183100
|
-
"decrease_budget_pct"
|
|
183101
|
-
]
|
|
183102
183091
|
},
|
|
183103
|
-
|
|
183092
|
+
{
|
|
183104
183093
|
"additionalProperties": false,
|
|
183105
183094
|
"type": "object",
|
|
183095
|
+
"required": [
|
|
183096
|
+
"type"
|
|
183097
|
+
],
|
|
183106
183098
|
"properties": {
|
|
183107
|
-
"
|
|
183108
|
-
"description": "
|
|
183109
|
-
"
|
|
183110
|
-
"
|
|
183111
|
-
|
|
183099
|
+
"type": {
|
|
183100
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
183101
|
+
"type": "string",
|
|
183102
|
+
"enum": [
|
|
183103
|
+
"activate"
|
|
183104
|
+
]
|
|
183112
183105
|
},
|
|
183113
|
-
"
|
|
183114
|
-
"
|
|
183115
|
-
"
|
|
183116
|
-
"maximum": 100,
|
|
183117
|
-
"type": "number"
|
|
183106
|
+
"params": {
|
|
183107
|
+
"$comment": "json-value",
|
|
183108
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183118
183109
|
}
|
|
183119
183110
|
}
|
|
183120
|
-
}
|
|
183121
|
-
}
|
|
183122
|
-
},
|
|
183123
|
-
{
|
|
183124
|
-
"additionalProperties": false,
|
|
183125
|
-
"type": "object",
|
|
183126
|
-
"required": [
|
|
183127
|
-
"type"
|
|
183128
|
-
],
|
|
183129
|
-
"properties": {
|
|
183130
|
-
"type": {
|
|
183131
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
183132
|
-
"type": "string",
|
|
183133
|
-
"enum": [
|
|
183134
|
-
"relaunch"
|
|
183135
|
-
]
|
|
183136
183111
|
},
|
|
183137
|
-
|
|
183138
|
-
"
|
|
183139
|
-
"
|
|
183140
|
-
|
|
183141
|
-
|
|
183142
|
-
|
|
183143
|
-
|
|
183144
|
-
|
|
183145
|
-
|
|
183146
|
-
"required": [
|
|
183147
|
-
"type"
|
|
183148
|
-
],
|
|
183149
|
-
"properties": {
|
|
183150
|
-
"type": {
|
|
183151
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
183152
|
-
"type": "string",
|
|
183153
|
-
"enum": [
|
|
183154
|
-
"notify_only"
|
|
183155
|
-
]
|
|
183156
|
-
},
|
|
183157
|
-
"params": {
|
|
183158
|
-
"$comment": "json-value",
|
|
183159
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183160
|
-
}
|
|
183161
|
-
}
|
|
183162
|
-
},
|
|
183163
|
-
{
|
|
183164
|
-
"additionalProperties": false,
|
|
183165
|
-
"type": "object",
|
|
183166
|
-
"required": [
|
|
183167
|
-
"type",
|
|
183168
|
-
"platform",
|
|
183169
|
-
"entity_level"
|
|
183170
|
-
],
|
|
183171
|
-
"properties": {
|
|
183172
|
-
"type": {
|
|
183173
|
-
"type": "string",
|
|
183174
|
-
"enum": [
|
|
183175
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
183176
|
-
]
|
|
183177
|
-
},
|
|
183178
|
-
"platform": {
|
|
183179
|
-
"anyOf": [
|
|
183180
|
-
{
|
|
183112
|
+
{
|
|
183113
|
+
"additionalProperties": false,
|
|
183114
|
+
"type": "object",
|
|
183115
|
+
"required": [
|
|
183116
|
+
"type"
|
|
183117
|
+
],
|
|
183118
|
+
"properties": {
|
|
183119
|
+
"type": {
|
|
183120
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
183181
183121
|
"type": "string",
|
|
183182
183122
|
"enum": [
|
|
183183
|
-
"
|
|
183123
|
+
"increase_budget_pct"
|
|
183184
183124
|
]
|
|
183185
183125
|
},
|
|
183186
|
-
{
|
|
183126
|
+
"params": {
|
|
183127
|
+
"additionalProperties": false,
|
|
183128
|
+
"type": "object",
|
|
183129
|
+
"properties": {
|
|
183130
|
+
"percentage": {
|
|
183131
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
183132
|
+
"minimum": 1,
|
|
183133
|
+
"maximum": 1000,
|
|
183134
|
+
"type": "number"
|
|
183135
|
+
},
|
|
183136
|
+
"pct": {
|
|
183137
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
183138
|
+
"minimum": 1,
|
|
183139
|
+
"maximum": 1000,
|
|
183140
|
+
"type": "number"
|
|
183141
|
+
}
|
|
183142
|
+
}
|
|
183143
|
+
}
|
|
183144
|
+
}
|
|
183145
|
+
},
|
|
183146
|
+
{
|
|
183147
|
+
"additionalProperties": false,
|
|
183148
|
+
"type": "object",
|
|
183149
|
+
"required": [
|
|
183150
|
+
"type"
|
|
183151
|
+
],
|
|
183152
|
+
"properties": {
|
|
183153
|
+
"type": {
|
|
183154
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
183187
183155
|
"type": "string",
|
|
183188
183156
|
"enum": [
|
|
183189
|
-
"
|
|
183157
|
+
"decrease_budget_pct"
|
|
183190
183158
|
]
|
|
183191
183159
|
},
|
|
183192
|
-
{
|
|
183160
|
+
"params": {
|
|
183161
|
+
"additionalProperties": false,
|
|
183162
|
+
"type": "object",
|
|
183163
|
+
"properties": {
|
|
183164
|
+
"percentage": {
|
|
183165
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
183166
|
+
"minimum": 1,
|
|
183167
|
+
"maximum": 100,
|
|
183168
|
+
"type": "number"
|
|
183169
|
+
},
|
|
183170
|
+
"pct": {
|
|
183171
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
183172
|
+
"minimum": 1,
|
|
183173
|
+
"maximum": 100,
|
|
183174
|
+
"type": "number"
|
|
183175
|
+
}
|
|
183176
|
+
}
|
|
183177
|
+
}
|
|
183178
|
+
}
|
|
183179
|
+
},
|
|
183180
|
+
{
|
|
183181
|
+
"additionalProperties": false,
|
|
183182
|
+
"type": "object",
|
|
183183
|
+
"required": [
|
|
183184
|
+
"type"
|
|
183185
|
+
],
|
|
183186
|
+
"properties": {
|
|
183187
|
+
"type": {
|
|
183188
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
183193
183189
|
"type": "string",
|
|
183194
183190
|
"enum": [
|
|
183195
|
-
"
|
|
183191
|
+
"relaunch"
|
|
183196
183192
|
]
|
|
183197
183193
|
},
|
|
183198
|
-
{
|
|
183194
|
+
"params": {
|
|
183195
|
+
"$comment": "json-value",
|
|
183196
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183197
|
+
}
|
|
183198
|
+
}
|
|
183199
|
+
},
|
|
183200
|
+
{
|
|
183201
|
+
"additionalProperties": false,
|
|
183202
|
+
"type": "object",
|
|
183203
|
+
"required": [
|
|
183204
|
+
"type"
|
|
183205
|
+
],
|
|
183206
|
+
"properties": {
|
|
183207
|
+
"type": {
|
|
183208
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
183199
183209
|
"type": "string",
|
|
183200
183210
|
"enum": [
|
|
183201
|
-
"
|
|
183211
|
+
"notify_only"
|
|
183202
183212
|
]
|
|
183203
183213
|
},
|
|
183204
|
-
{
|
|
183205
|
-
"
|
|
183206
|
-
"
|
|
183207
|
-
"LINKEDIN"
|
|
183208
|
-
]
|
|
183214
|
+
"params": {
|
|
183215
|
+
"$comment": "json-value",
|
|
183216
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183209
183217
|
}
|
|
183210
|
-
|
|
183218
|
+
}
|
|
183211
183219
|
},
|
|
183212
|
-
|
|
183213
|
-
"
|
|
183214
|
-
"
|
|
183215
|
-
|
|
183216
|
-
|
|
183217
|
-
|
|
183218
|
-
|
|
183219
|
-
|
|
183220
|
-
|
|
183221
|
-
|
|
183222
|
-
"type": "object",
|
|
183223
|
-
"required": [
|
|
183224
|
-
"type",
|
|
183225
|
-
"platform",
|
|
183226
|
-
"entity_level",
|
|
183227
|
-
"pct"
|
|
183228
|
-
],
|
|
183229
|
-
"properties": {
|
|
183230
|
-
"type": {
|
|
183231
|
-
"anyOf": [
|
|
183232
|
-
{
|
|
183220
|
+
{
|
|
183221
|
+
"additionalProperties": false,
|
|
183222
|
+
"type": "object",
|
|
183223
|
+
"required": [
|
|
183224
|
+
"type",
|
|
183225
|
+
"platform",
|
|
183226
|
+
"entity_level"
|
|
183227
|
+
],
|
|
183228
|
+
"properties": {
|
|
183229
|
+
"type": {
|
|
183233
183230
|
"type": "string",
|
|
183234
183231
|
"enum": [
|
|
183235
|
-
"
|
|
183232
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
183236
183233
|
]
|
|
183237
183234
|
},
|
|
183238
|
-
{
|
|
183235
|
+
"platform": {
|
|
183236
|
+
"anyOf": [
|
|
183237
|
+
{
|
|
183238
|
+
"type": "string",
|
|
183239
|
+
"enum": [
|
|
183240
|
+
"META"
|
|
183241
|
+
]
|
|
183242
|
+
},
|
|
183243
|
+
{
|
|
183244
|
+
"type": "string",
|
|
183245
|
+
"enum": [
|
|
183246
|
+
"GOOGLE"
|
|
183247
|
+
]
|
|
183248
|
+
},
|
|
183249
|
+
{
|
|
183250
|
+
"type": "string",
|
|
183251
|
+
"enum": [
|
|
183252
|
+
"TIKTOK"
|
|
183253
|
+
]
|
|
183254
|
+
},
|
|
183255
|
+
{
|
|
183256
|
+
"type": "string",
|
|
183257
|
+
"enum": [
|
|
183258
|
+
"TABOOLA"
|
|
183259
|
+
]
|
|
183260
|
+
},
|
|
183261
|
+
{
|
|
183262
|
+
"type": "string",
|
|
183263
|
+
"enum": [
|
|
183264
|
+
"LINKEDIN"
|
|
183265
|
+
]
|
|
183266
|
+
}
|
|
183267
|
+
]
|
|
183268
|
+
},
|
|
183269
|
+
"entity_level": {
|
|
183239
183270
|
"type": "string",
|
|
183240
183271
|
"enum": [
|
|
183241
|
-
"
|
|
183272
|
+
"campaign"
|
|
183242
183273
|
]
|
|
183243
183274
|
}
|
|
183244
|
-
|
|
183275
|
+
}
|
|
183245
183276
|
},
|
|
183246
|
-
|
|
183247
|
-
"
|
|
183248
|
-
|
|
183249
|
-
|
|
183250
|
-
|
|
183251
|
-
|
|
183277
|
+
{
|
|
183278
|
+
"additionalProperties": false,
|
|
183279
|
+
"type": "object",
|
|
183280
|
+
"required": [
|
|
183281
|
+
"type",
|
|
183282
|
+
"platform",
|
|
183283
|
+
"entity_level",
|
|
183284
|
+
"pct"
|
|
183285
|
+
],
|
|
183286
|
+
"properties": {
|
|
183287
|
+
"type": {
|
|
183288
|
+
"anyOf": [
|
|
183289
|
+
{
|
|
183290
|
+
"type": "string",
|
|
183291
|
+
"enum": [
|
|
183292
|
+
"INCREASE_BUDGET_PCT"
|
|
183293
|
+
]
|
|
183294
|
+
},
|
|
183295
|
+
{
|
|
183296
|
+
"type": "string",
|
|
183297
|
+
"enum": [
|
|
183298
|
+
"DECREASE_BUDGET_PCT"
|
|
183299
|
+
]
|
|
183300
|
+
}
|
|
183252
183301
|
]
|
|
183253
183302
|
},
|
|
183254
|
-
{
|
|
183255
|
-
"
|
|
183256
|
-
|
|
183257
|
-
|
|
183303
|
+
"platform": {
|
|
183304
|
+
"anyOf": [
|
|
183305
|
+
{
|
|
183306
|
+
"type": "string",
|
|
183307
|
+
"enum": [
|
|
183308
|
+
"META"
|
|
183309
|
+
]
|
|
183310
|
+
},
|
|
183311
|
+
{
|
|
183312
|
+
"type": "string",
|
|
183313
|
+
"enum": [
|
|
183314
|
+
"GOOGLE"
|
|
183315
|
+
]
|
|
183316
|
+
},
|
|
183317
|
+
{
|
|
183318
|
+
"type": "string",
|
|
183319
|
+
"enum": [
|
|
183320
|
+
"TIKTOK"
|
|
183321
|
+
]
|
|
183322
|
+
},
|
|
183323
|
+
{
|
|
183324
|
+
"type": "string",
|
|
183325
|
+
"enum": [
|
|
183326
|
+
"TABOOLA"
|
|
183327
|
+
]
|
|
183328
|
+
},
|
|
183329
|
+
{
|
|
183330
|
+
"type": "string",
|
|
183331
|
+
"enum": [
|
|
183332
|
+
"LINKEDIN"
|
|
183333
|
+
]
|
|
183334
|
+
}
|
|
183258
183335
|
]
|
|
183259
183336
|
},
|
|
183260
|
-
{
|
|
183337
|
+
"entity_level": {
|
|
183261
183338
|
"type": "string",
|
|
183262
183339
|
"enum": [
|
|
183263
|
-
"
|
|
183340
|
+
"campaign"
|
|
183264
183341
|
]
|
|
183265
183342
|
},
|
|
183266
|
-
{
|
|
183343
|
+
"pct": {
|
|
183344
|
+
"minimum": 1,
|
|
183345
|
+
"maximum": 100,
|
|
183346
|
+
"type": "number"
|
|
183347
|
+
}
|
|
183348
|
+
}
|
|
183349
|
+
},
|
|
183350
|
+
{
|
|
183351
|
+
"additionalProperties": false,
|
|
183352
|
+
"type": "object",
|
|
183353
|
+
"required": [
|
|
183354
|
+
"type",
|
|
183355
|
+
"channel",
|
|
183356
|
+
"message_template"
|
|
183357
|
+
],
|
|
183358
|
+
"properties": {
|
|
183359
|
+
"type": {
|
|
183267
183360
|
"type": "string",
|
|
183268
183361
|
"enum": [
|
|
183269
|
-
"
|
|
183362
|
+
"NOTIFY_CHANNEL"
|
|
183270
183363
|
]
|
|
183271
183364
|
},
|
|
183272
|
-
{
|
|
183273
|
-
"
|
|
183274
|
-
|
|
183275
|
-
|
|
183365
|
+
"channel": {
|
|
183366
|
+
"anyOf": [
|
|
183367
|
+
{
|
|
183368
|
+
"type": "string",
|
|
183369
|
+
"enum": [
|
|
183370
|
+
"in_app"
|
|
183371
|
+
]
|
|
183372
|
+
},
|
|
183373
|
+
{
|
|
183374
|
+
"type": "string",
|
|
183375
|
+
"enum": [
|
|
183376
|
+
"email"
|
|
183377
|
+
]
|
|
183378
|
+
},
|
|
183379
|
+
{
|
|
183380
|
+
"type": "string",
|
|
183381
|
+
"enum": [
|
|
183382
|
+
"telegram"
|
|
183383
|
+
]
|
|
183384
|
+
}
|
|
183276
183385
|
]
|
|
183386
|
+
},
|
|
183387
|
+
"message_template": {
|
|
183388
|
+
"minLength": 1,
|
|
183389
|
+
"maxLength": 500,
|
|
183390
|
+
"type": "string"
|
|
183277
183391
|
}
|
|
183278
|
-
|
|
183279
|
-
},
|
|
183280
|
-
"entity_level": {
|
|
183281
|
-
"type": "string",
|
|
183282
|
-
"enum": [
|
|
183283
|
-
"campaign"
|
|
183284
|
-
]
|
|
183285
|
-
},
|
|
183286
|
-
"pct": {
|
|
183287
|
-
"minimum": 1,
|
|
183288
|
-
"maximum": 100,
|
|
183289
|
-
"type": "number"
|
|
183392
|
+
}
|
|
183290
183393
|
}
|
|
183291
|
-
|
|
183394
|
+
]
|
|
183292
183395
|
},
|
|
183293
183396
|
{
|
|
183294
|
-
"additionalProperties":
|
|
183397
|
+
"additionalProperties": true,
|
|
183398
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
183295
183399
|
"type": "object",
|
|
183296
183400
|
"required": [
|
|
183297
|
-
"type"
|
|
183298
|
-
"channel",
|
|
183299
|
-
"message_template"
|
|
183401
|
+
"type"
|
|
183300
183402
|
],
|
|
183301
183403
|
"properties": {
|
|
183302
183404
|
"type": {
|
|
183303
|
-
"
|
|
183304
|
-
"enum": [
|
|
183305
|
-
"NOTIFY_CHANNEL"
|
|
183306
|
-
]
|
|
183307
|
-
},
|
|
183308
|
-
"channel": {
|
|
183309
|
-
"anyOf": [
|
|
183310
|
-
{
|
|
183311
|
-
"type": "string",
|
|
183312
|
-
"enum": [
|
|
183313
|
-
"in_app"
|
|
183314
|
-
]
|
|
183315
|
-
},
|
|
183316
|
-
{
|
|
183317
|
-
"type": "string",
|
|
183318
|
-
"enum": [
|
|
183319
|
-
"email"
|
|
183320
|
-
]
|
|
183321
|
-
},
|
|
183322
|
-
{
|
|
183323
|
-
"type": "string",
|
|
183324
|
-
"enum": [
|
|
183325
|
-
"telegram"
|
|
183326
|
-
]
|
|
183327
|
-
}
|
|
183328
|
-
]
|
|
183329
|
-
},
|
|
183330
|
-
"message_template": {
|
|
183331
|
-
"minLength": 1,
|
|
183332
|
-
"maxLength": 500,
|
|
183405
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
183333
183406
|
"type": "string"
|
|
183407
|
+
},
|
|
183408
|
+
"params": {
|
|
183409
|
+
"$comment": "json-value",
|
|
183410
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
183334
183411
|
}
|
|
183335
183412
|
}
|
|
183336
183413
|
}
|
|
@@ -184780,330 +184857,352 @@
|
|
|
184780
184857
|
}
|
|
184781
184858
|
},
|
|
184782
184859
|
"actions": {
|
|
184783
|
-
"description": "Ordered list of actions
|
|
184860
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
184784
184861
|
"type": "array",
|
|
184785
184862
|
"items": {
|
|
184786
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
184787
184863
|
"anyOf": [
|
|
184788
184864
|
{
|
|
184789
|
-
"
|
|
184790
|
-
"
|
|
184791
|
-
|
|
184792
|
-
"type"
|
|
184793
|
-
],
|
|
184794
|
-
"properties": {
|
|
184795
|
-
"type": {
|
|
184796
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
184797
|
-
"type": "string",
|
|
184798
|
-
"enum": [
|
|
184799
|
-
"pause"
|
|
184800
|
-
]
|
|
184801
|
-
},
|
|
184802
|
-
"params": {
|
|
184803
|
-
"$comment": "json-value",
|
|
184804
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184805
|
-
}
|
|
184806
|
-
}
|
|
184807
|
-
},
|
|
184808
|
-
{
|
|
184809
|
-
"additionalProperties": false,
|
|
184810
|
-
"type": "object",
|
|
184811
|
-
"required": [
|
|
184812
|
-
"type"
|
|
184813
|
-
],
|
|
184814
|
-
"properties": {
|
|
184815
|
-
"type": {
|
|
184816
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
184817
|
-
"type": "string",
|
|
184818
|
-
"enum": [
|
|
184819
|
-
"activate"
|
|
184820
|
-
]
|
|
184821
|
-
},
|
|
184822
|
-
"params": {
|
|
184823
|
-
"$comment": "json-value",
|
|
184824
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184825
|
-
}
|
|
184826
|
-
}
|
|
184827
|
-
},
|
|
184828
|
-
{
|
|
184829
|
-
"additionalProperties": false,
|
|
184830
|
-
"type": "object",
|
|
184831
|
-
"required": [
|
|
184832
|
-
"type"
|
|
184833
|
-
],
|
|
184834
|
-
"properties": {
|
|
184835
|
-
"type": {
|
|
184836
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
184837
|
-
"type": "string",
|
|
184838
|
-
"enum": [
|
|
184839
|
-
"increase_budget_pct"
|
|
184840
|
-
]
|
|
184841
|
-
},
|
|
184842
|
-
"params": {
|
|
184865
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
184866
|
+
"anyOf": [
|
|
184867
|
+
{
|
|
184843
184868
|
"additionalProperties": false,
|
|
184844
184869
|
"type": "object",
|
|
184870
|
+
"required": [
|
|
184871
|
+
"type"
|
|
184872
|
+
],
|
|
184845
184873
|
"properties": {
|
|
184846
|
-
"
|
|
184847
|
-
"description": "
|
|
184848
|
-
"
|
|
184849
|
-
"
|
|
184850
|
-
|
|
184874
|
+
"type": {
|
|
184875
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
184876
|
+
"type": "string",
|
|
184877
|
+
"enum": [
|
|
184878
|
+
"pause"
|
|
184879
|
+
]
|
|
184851
184880
|
},
|
|
184852
|
-
"
|
|
184853
|
-
"
|
|
184854
|
-
"
|
|
184855
|
-
"maximum": 100,
|
|
184856
|
-
"type": "number"
|
|
184881
|
+
"params": {
|
|
184882
|
+
"$comment": "json-value",
|
|
184883
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184857
184884
|
}
|
|
184858
184885
|
}
|
|
184859
|
-
}
|
|
184860
|
-
}
|
|
184861
|
-
},
|
|
184862
|
-
{
|
|
184863
|
-
"additionalProperties": false,
|
|
184864
|
-
"type": "object",
|
|
184865
|
-
"required": [
|
|
184866
|
-
"type"
|
|
184867
|
-
],
|
|
184868
|
-
"properties": {
|
|
184869
|
-
"type": {
|
|
184870
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
184871
|
-
"type": "string",
|
|
184872
|
-
"enum": [
|
|
184873
|
-
"decrease_budget_pct"
|
|
184874
|
-
]
|
|
184875
184886
|
},
|
|
184876
|
-
|
|
184887
|
+
{
|
|
184877
184888
|
"additionalProperties": false,
|
|
184878
184889
|
"type": "object",
|
|
184890
|
+
"required": [
|
|
184891
|
+
"type"
|
|
184892
|
+
],
|
|
184879
184893
|
"properties": {
|
|
184880
|
-
"
|
|
184881
|
-
"description": "
|
|
184882
|
-
"
|
|
184883
|
-
"
|
|
184884
|
-
|
|
184894
|
+
"type": {
|
|
184895
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
184896
|
+
"type": "string",
|
|
184897
|
+
"enum": [
|
|
184898
|
+
"activate"
|
|
184899
|
+
]
|
|
184885
184900
|
},
|
|
184886
|
-
"
|
|
184887
|
-
"
|
|
184888
|
-
"
|
|
184889
|
-
"maximum": 100,
|
|
184890
|
-
"type": "number"
|
|
184901
|
+
"params": {
|
|
184902
|
+
"$comment": "json-value",
|
|
184903
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184891
184904
|
}
|
|
184892
184905
|
}
|
|
184893
|
-
}
|
|
184894
|
-
}
|
|
184895
|
-
},
|
|
184896
|
-
{
|
|
184897
|
-
"additionalProperties": false,
|
|
184898
|
-
"type": "object",
|
|
184899
|
-
"required": [
|
|
184900
|
-
"type"
|
|
184901
|
-
],
|
|
184902
|
-
"properties": {
|
|
184903
|
-
"type": {
|
|
184904
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
184905
|
-
"type": "string",
|
|
184906
|
-
"enum": [
|
|
184907
|
-
"relaunch"
|
|
184908
|
-
]
|
|
184909
|
-
},
|
|
184910
|
-
"params": {
|
|
184911
|
-
"$comment": "json-value",
|
|
184912
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184913
|
-
}
|
|
184914
|
-
}
|
|
184915
|
-
},
|
|
184916
|
-
{
|
|
184917
|
-
"additionalProperties": false,
|
|
184918
|
-
"type": "object",
|
|
184919
|
-
"required": [
|
|
184920
|
-
"type"
|
|
184921
|
-
],
|
|
184922
|
-
"properties": {
|
|
184923
|
-
"type": {
|
|
184924
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
184925
|
-
"type": "string",
|
|
184926
|
-
"enum": [
|
|
184927
|
-
"notify_only"
|
|
184928
|
-
]
|
|
184929
|
-
},
|
|
184930
|
-
"params": {
|
|
184931
|
-
"$comment": "json-value",
|
|
184932
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184933
|
-
}
|
|
184934
|
-
}
|
|
184935
|
-
},
|
|
184936
|
-
{
|
|
184937
|
-
"additionalProperties": false,
|
|
184938
|
-
"type": "object",
|
|
184939
|
-
"required": [
|
|
184940
|
-
"type",
|
|
184941
|
-
"platform",
|
|
184942
|
-
"entity_level"
|
|
184943
|
-
],
|
|
184944
|
-
"properties": {
|
|
184945
|
-
"type": {
|
|
184946
|
-
"type": "string",
|
|
184947
|
-
"enum": [
|
|
184948
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
184949
|
-
]
|
|
184950
184906
|
},
|
|
184951
|
-
|
|
184952
|
-
"
|
|
184953
|
-
|
|
184907
|
+
{
|
|
184908
|
+
"additionalProperties": false,
|
|
184909
|
+
"type": "object",
|
|
184910
|
+
"required": [
|
|
184911
|
+
"type"
|
|
184912
|
+
],
|
|
184913
|
+
"properties": {
|
|
184914
|
+
"type": {
|
|
184915
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
184954
184916
|
"type": "string",
|
|
184955
184917
|
"enum": [
|
|
184956
|
-
"
|
|
184918
|
+
"increase_budget_pct"
|
|
184957
184919
|
]
|
|
184958
184920
|
},
|
|
184959
|
-
{
|
|
184921
|
+
"params": {
|
|
184922
|
+
"additionalProperties": false,
|
|
184923
|
+
"type": "object",
|
|
184924
|
+
"properties": {
|
|
184925
|
+
"percentage": {
|
|
184926
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
184927
|
+
"minimum": 1,
|
|
184928
|
+
"maximum": 1000,
|
|
184929
|
+
"type": "number"
|
|
184930
|
+
},
|
|
184931
|
+
"pct": {
|
|
184932
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
184933
|
+
"minimum": 1,
|
|
184934
|
+
"maximum": 1000,
|
|
184935
|
+
"type": "number"
|
|
184936
|
+
}
|
|
184937
|
+
}
|
|
184938
|
+
}
|
|
184939
|
+
}
|
|
184940
|
+
},
|
|
184941
|
+
{
|
|
184942
|
+
"additionalProperties": false,
|
|
184943
|
+
"type": "object",
|
|
184944
|
+
"required": [
|
|
184945
|
+
"type"
|
|
184946
|
+
],
|
|
184947
|
+
"properties": {
|
|
184948
|
+
"type": {
|
|
184949
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
184960
184950
|
"type": "string",
|
|
184961
184951
|
"enum": [
|
|
184962
|
-
"
|
|
184952
|
+
"decrease_budget_pct"
|
|
184963
184953
|
]
|
|
184964
184954
|
},
|
|
184965
|
-
{
|
|
184955
|
+
"params": {
|
|
184956
|
+
"additionalProperties": false,
|
|
184957
|
+
"type": "object",
|
|
184958
|
+
"properties": {
|
|
184959
|
+
"percentage": {
|
|
184960
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
184961
|
+
"minimum": 1,
|
|
184962
|
+
"maximum": 100,
|
|
184963
|
+
"type": "number"
|
|
184964
|
+
},
|
|
184965
|
+
"pct": {
|
|
184966
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
184967
|
+
"minimum": 1,
|
|
184968
|
+
"maximum": 100,
|
|
184969
|
+
"type": "number"
|
|
184970
|
+
}
|
|
184971
|
+
}
|
|
184972
|
+
}
|
|
184973
|
+
}
|
|
184974
|
+
},
|
|
184975
|
+
{
|
|
184976
|
+
"additionalProperties": false,
|
|
184977
|
+
"type": "object",
|
|
184978
|
+
"required": [
|
|
184979
|
+
"type"
|
|
184980
|
+
],
|
|
184981
|
+
"properties": {
|
|
184982
|
+
"type": {
|
|
184983
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
184966
184984
|
"type": "string",
|
|
184967
184985
|
"enum": [
|
|
184968
|
-
"
|
|
184986
|
+
"relaunch"
|
|
184969
184987
|
]
|
|
184970
184988
|
},
|
|
184971
|
-
{
|
|
184989
|
+
"params": {
|
|
184990
|
+
"$comment": "json-value",
|
|
184991
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184992
|
+
}
|
|
184993
|
+
}
|
|
184994
|
+
},
|
|
184995
|
+
{
|
|
184996
|
+
"additionalProperties": false,
|
|
184997
|
+
"type": "object",
|
|
184998
|
+
"required": [
|
|
184999
|
+
"type"
|
|
185000
|
+
],
|
|
185001
|
+
"properties": {
|
|
185002
|
+
"type": {
|
|
185003
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
184972
185004
|
"type": "string",
|
|
184973
185005
|
"enum": [
|
|
184974
|
-
"
|
|
185006
|
+
"notify_only"
|
|
184975
185007
|
]
|
|
184976
185008
|
},
|
|
184977
|
-
{
|
|
184978
|
-
"
|
|
184979
|
-
"
|
|
184980
|
-
"LINKEDIN"
|
|
184981
|
-
]
|
|
185009
|
+
"params": {
|
|
185010
|
+
"$comment": "json-value",
|
|
185011
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
184982
185012
|
}
|
|
184983
|
-
|
|
185013
|
+
}
|
|
184984
185014
|
},
|
|
184985
|
-
|
|
184986
|
-
"
|
|
184987
|
-
"
|
|
184988
|
-
|
|
184989
|
-
|
|
184990
|
-
|
|
184991
|
-
|
|
184992
|
-
|
|
184993
|
-
|
|
184994
|
-
|
|
184995
|
-
"type": "object",
|
|
184996
|
-
"required": [
|
|
184997
|
-
"type",
|
|
184998
|
-
"platform",
|
|
184999
|
-
"entity_level",
|
|
185000
|
-
"pct"
|
|
185001
|
-
],
|
|
185002
|
-
"properties": {
|
|
185003
|
-
"type": {
|
|
185004
|
-
"anyOf": [
|
|
185005
|
-
{
|
|
185015
|
+
{
|
|
185016
|
+
"additionalProperties": false,
|
|
185017
|
+
"type": "object",
|
|
185018
|
+
"required": [
|
|
185019
|
+
"type",
|
|
185020
|
+
"platform",
|
|
185021
|
+
"entity_level"
|
|
185022
|
+
],
|
|
185023
|
+
"properties": {
|
|
185024
|
+
"type": {
|
|
185006
185025
|
"type": "string",
|
|
185007
185026
|
"enum": [
|
|
185008
|
-
"
|
|
185027
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
185009
185028
|
]
|
|
185010
185029
|
},
|
|
185011
|
-
{
|
|
185030
|
+
"platform": {
|
|
185031
|
+
"anyOf": [
|
|
185032
|
+
{
|
|
185033
|
+
"type": "string",
|
|
185034
|
+
"enum": [
|
|
185035
|
+
"META"
|
|
185036
|
+
]
|
|
185037
|
+
},
|
|
185038
|
+
{
|
|
185039
|
+
"type": "string",
|
|
185040
|
+
"enum": [
|
|
185041
|
+
"GOOGLE"
|
|
185042
|
+
]
|
|
185043
|
+
},
|
|
185044
|
+
{
|
|
185045
|
+
"type": "string",
|
|
185046
|
+
"enum": [
|
|
185047
|
+
"TIKTOK"
|
|
185048
|
+
]
|
|
185049
|
+
},
|
|
185050
|
+
{
|
|
185051
|
+
"type": "string",
|
|
185052
|
+
"enum": [
|
|
185053
|
+
"TABOOLA"
|
|
185054
|
+
]
|
|
185055
|
+
},
|
|
185056
|
+
{
|
|
185057
|
+
"type": "string",
|
|
185058
|
+
"enum": [
|
|
185059
|
+
"LINKEDIN"
|
|
185060
|
+
]
|
|
185061
|
+
}
|
|
185062
|
+
]
|
|
185063
|
+
},
|
|
185064
|
+
"entity_level": {
|
|
185012
185065
|
"type": "string",
|
|
185013
185066
|
"enum": [
|
|
185014
|
-
"
|
|
185067
|
+
"campaign"
|
|
185015
185068
|
]
|
|
185016
185069
|
}
|
|
185017
|
-
|
|
185070
|
+
}
|
|
185018
185071
|
},
|
|
185019
|
-
|
|
185020
|
-
"
|
|
185021
|
-
|
|
185022
|
-
|
|
185023
|
-
|
|
185024
|
-
|
|
185072
|
+
{
|
|
185073
|
+
"additionalProperties": false,
|
|
185074
|
+
"type": "object",
|
|
185075
|
+
"required": [
|
|
185076
|
+
"type",
|
|
185077
|
+
"platform",
|
|
185078
|
+
"entity_level",
|
|
185079
|
+
"pct"
|
|
185080
|
+
],
|
|
185081
|
+
"properties": {
|
|
185082
|
+
"type": {
|
|
185083
|
+
"anyOf": [
|
|
185084
|
+
{
|
|
185085
|
+
"type": "string",
|
|
185086
|
+
"enum": [
|
|
185087
|
+
"INCREASE_BUDGET_PCT"
|
|
185088
|
+
]
|
|
185089
|
+
},
|
|
185090
|
+
{
|
|
185091
|
+
"type": "string",
|
|
185092
|
+
"enum": [
|
|
185093
|
+
"DECREASE_BUDGET_PCT"
|
|
185094
|
+
]
|
|
185095
|
+
}
|
|
185025
185096
|
]
|
|
185026
185097
|
},
|
|
185027
|
-
{
|
|
185028
|
-
"
|
|
185029
|
-
|
|
185030
|
-
|
|
185098
|
+
"platform": {
|
|
185099
|
+
"anyOf": [
|
|
185100
|
+
{
|
|
185101
|
+
"type": "string",
|
|
185102
|
+
"enum": [
|
|
185103
|
+
"META"
|
|
185104
|
+
]
|
|
185105
|
+
},
|
|
185106
|
+
{
|
|
185107
|
+
"type": "string",
|
|
185108
|
+
"enum": [
|
|
185109
|
+
"GOOGLE"
|
|
185110
|
+
]
|
|
185111
|
+
},
|
|
185112
|
+
{
|
|
185113
|
+
"type": "string",
|
|
185114
|
+
"enum": [
|
|
185115
|
+
"TIKTOK"
|
|
185116
|
+
]
|
|
185117
|
+
},
|
|
185118
|
+
{
|
|
185119
|
+
"type": "string",
|
|
185120
|
+
"enum": [
|
|
185121
|
+
"TABOOLA"
|
|
185122
|
+
]
|
|
185123
|
+
},
|
|
185124
|
+
{
|
|
185125
|
+
"type": "string",
|
|
185126
|
+
"enum": [
|
|
185127
|
+
"LINKEDIN"
|
|
185128
|
+
]
|
|
185129
|
+
}
|
|
185031
185130
|
]
|
|
185032
185131
|
},
|
|
185033
|
-
{
|
|
185132
|
+
"entity_level": {
|
|
185034
185133
|
"type": "string",
|
|
185035
185134
|
"enum": [
|
|
185036
|
-
"
|
|
185135
|
+
"campaign"
|
|
185037
185136
|
]
|
|
185038
185137
|
},
|
|
185039
|
-
{
|
|
185138
|
+
"pct": {
|
|
185139
|
+
"minimum": 1,
|
|
185140
|
+
"maximum": 100,
|
|
185141
|
+
"type": "number"
|
|
185142
|
+
}
|
|
185143
|
+
}
|
|
185144
|
+
},
|
|
185145
|
+
{
|
|
185146
|
+
"additionalProperties": false,
|
|
185147
|
+
"type": "object",
|
|
185148
|
+
"required": [
|
|
185149
|
+
"type",
|
|
185150
|
+
"channel",
|
|
185151
|
+
"message_template"
|
|
185152
|
+
],
|
|
185153
|
+
"properties": {
|
|
185154
|
+
"type": {
|
|
185040
185155
|
"type": "string",
|
|
185041
185156
|
"enum": [
|
|
185042
|
-
"
|
|
185157
|
+
"NOTIFY_CHANNEL"
|
|
185043
185158
|
]
|
|
185044
185159
|
},
|
|
185045
|
-
{
|
|
185046
|
-
"
|
|
185047
|
-
|
|
185048
|
-
|
|
185160
|
+
"channel": {
|
|
185161
|
+
"anyOf": [
|
|
185162
|
+
{
|
|
185163
|
+
"type": "string",
|
|
185164
|
+
"enum": [
|
|
185165
|
+
"in_app"
|
|
185166
|
+
]
|
|
185167
|
+
},
|
|
185168
|
+
{
|
|
185169
|
+
"type": "string",
|
|
185170
|
+
"enum": [
|
|
185171
|
+
"email"
|
|
185172
|
+
]
|
|
185173
|
+
},
|
|
185174
|
+
{
|
|
185175
|
+
"type": "string",
|
|
185176
|
+
"enum": [
|
|
185177
|
+
"telegram"
|
|
185178
|
+
]
|
|
185179
|
+
}
|
|
185049
185180
|
]
|
|
185181
|
+
},
|
|
185182
|
+
"message_template": {
|
|
185183
|
+
"minLength": 1,
|
|
185184
|
+
"maxLength": 500,
|
|
185185
|
+
"type": "string"
|
|
185050
185186
|
}
|
|
185051
|
-
|
|
185052
|
-
},
|
|
185053
|
-
"entity_level": {
|
|
185054
|
-
"type": "string",
|
|
185055
|
-
"enum": [
|
|
185056
|
-
"campaign"
|
|
185057
|
-
]
|
|
185058
|
-
},
|
|
185059
|
-
"pct": {
|
|
185060
|
-
"minimum": 1,
|
|
185061
|
-
"maximum": 100,
|
|
185062
|
-
"type": "number"
|
|
185187
|
+
}
|
|
185063
185188
|
}
|
|
185064
|
-
|
|
185189
|
+
]
|
|
185065
185190
|
},
|
|
185066
185191
|
{
|
|
185067
|
-
"additionalProperties":
|
|
185192
|
+
"additionalProperties": true,
|
|
185193
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
185068
185194
|
"type": "object",
|
|
185069
185195
|
"required": [
|
|
185070
|
-
"type"
|
|
185071
|
-
"channel",
|
|
185072
|
-
"message_template"
|
|
185196
|
+
"type"
|
|
185073
185197
|
],
|
|
185074
185198
|
"properties": {
|
|
185075
185199
|
"type": {
|
|
185076
|
-
"
|
|
185077
|
-
"enum": [
|
|
185078
|
-
"NOTIFY_CHANNEL"
|
|
185079
|
-
]
|
|
185080
|
-
},
|
|
185081
|
-
"channel": {
|
|
185082
|
-
"anyOf": [
|
|
185083
|
-
{
|
|
185084
|
-
"type": "string",
|
|
185085
|
-
"enum": [
|
|
185086
|
-
"in_app"
|
|
185087
|
-
]
|
|
185088
|
-
},
|
|
185089
|
-
{
|
|
185090
|
-
"type": "string",
|
|
185091
|
-
"enum": [
|
|
185092
|
-
"email"
|
|
185093
|
-
]
|
|
185094
|
-
},
|
|
185095
|
-
{
|
|
185096
|
-
"type": "string",
|
|
185097
|
-
"enum": [
|
|
185098
|
-
"telegram"
|
|
185099
|
-
]
|
|
185100
|
-
}
|
|
185101
|
-
]
|
|
185102
|
-
},
|
|
185103
|
-
"message_template": {
|
|
185104
|
-
"minLength": 1,
|
|
185105
|
-
"maxLength": 500,
|
|
185200
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
185106
185201
|
"type": "string"
|
|
185202
|
+
},
|
|
185203
|
+
"params": {
|
|
185204
|
+
"$comment": "json-value",
|
|
185205
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
185107
185206
|
}
|
|
185108
185207
|
}
|
|
185109
185208
|
}
|
|
@@ -186337,15 +186436,15 @@
|
|
|
186337
186436
|
"type": "object",
|
|
186338
186437
|
"properties": {
|
|
186339
186438
|
"percentage": {
|
|
186340
|
-
"description": "Percent
|
|
186439
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
186341
186440
|
"minimum": 1,
|
|
186342
|
-
"maximum":
|
|
186441
|
+
"maximum": 1000,
|
|
186343
186442
|
"type": "number"
|
|
186344
186443
|
},
|
|
186345
186444
|
"pct": {
|
|
186346
186445
|
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
186347
186446
|
"minimum": 1,
|
|
186348
|
-
"maximum":
|
|
186447
|
+
"maximum": 1000,
|
|
186349
186448
|
"type": "number"
|
|
186350
186449
|
}
|
|
186351
186450
|
}
|
|
@@ -187588,330 +187687,352 @@
|
|
|
187588
187687
|
}
|
|
187589
187688
|
},
|
|
187590
187689
|
"actions": {
|
|
187591
|
-
"description": "Ordered list of actions
|
|
187690
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
187592
187691
|
"type": "array",
|
|
187593
187692
|
"items": {
|
|
187594
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
187595
187693
|
"anyOf": [
|
|
187596
187694
|
{
|
|
187597
|
-
"
|
|
187598
|
-
"
|
|
187599
|
-
|
|
187600
|
-
"type"
|
|
187601
|
-
],
|
|
187602
|
-
"properties": {
|
|
187603
|
-
"type": {
|
|
187604
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
187605
|
-
"type": "string",
|
|
187606
|
-
"enum": [
|
|
187607
|
-
"pause"
|
|
187608
|
-
]
|
|
187609
|
-
},
|
|
187610
|
-
"params": {
|
|
187611
|
-
"$comment": "json-value",
|
|
187612
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187613
|
-
}
|
|
187614
|
-
}
|
|
187615
|
-
},
|
|
187616
|
-
{
|
|
187617
|
-
"additionalProperties": false,
|
|
187618
|
-
"type": "object",
|
|
187619
|
-
"required": [
|
|
187620
|
-
"type"
|
|
187621
|
-
],
|
|
187622
|
-
"properties": {
|
|
187623
|
-
"type": {
|
|
187624
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
187625
|
-
"type": "string",
|
|
187626
|
-
"enum": [
|
|
187627
|
-
"activate"
|
|
187628
|
-
]
|
|
187629
|
-
},
|
|
187630
|
-
"params": {
|
|
187631
|
-
"$comment": "json-value",
|
|
187632
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187633
|
-
}
|
|
187634
|
-
}
|
|
187635
|
-
},
|
|
187636
|
-
{
|
|
187637
|
-
"additionalProperties": false,
|
|
187638
|
-
"type": "object",
|
|
187639
|
-
"required": [
|
|
187640
|
-
"type"
|
|
187641
|
-
],
|
|
187642
|
-
"properties": {
|
|
187643
|
-
"type": {
|
|
187644
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
187645
|
-
"type": "string",
|
|
187646
|
-
"enum": [
|
|
187647
|
-
"increase_budget_pct"
|
|
187648
|
-
]
|
|
187649
|
-
},
|
|
187650
|
-
"params": {
|
|
187695
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
187696
|
+
"anyOf": [
|
|
187697
|
+
{
|
|
187651
187698
|
"additionalProperties": false,
|
|
187652
187699
|
"type": "object",
|
|
187700
|
+
"required": [
|
|
187701
|
+
"type"
|
|
187702
|
+
],
|
|
187653
187703
|
"properties": {
|
|
187654
|
-
"
|
|
187655
|
-
"description": "
|
|
187656
|
-
"
|
|
187657
|
-
"
|
|
187658
|
-
|
|
187704
|
+
"type": {
|
|
187705
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
187706
|
+
"type": "string",
|
|
187707
|
+
"enum": [
|
|
187708
|
+
"pause"
|
|
187709
|
+
]
|
|
187659
187710
|
},
|
|
187660
|
-
"
|
|
187661
|
-
"
|
|
187662
|
-
"
|
|
187663
|
-
"maximum": 100,
|
|
187664
|
-
"type": "number"
|
|
187711
|
+
"params": {
|
|
187712
|
+
"$comment": "json-value",
|
|
187713
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187665
187714
|
}
|
|
187666
187715
|
}
|
|
187667
|
-
}
|
|
187668
|
-
}
|
|
187669
|
-
},
|
|
187670
|
-
{
|
|
187671
|
-
"additionalProperties": false,
|
|
187672
|
-
"type": "object",
|
|
187673
|
-
"required": [
|
|
187674
|
-
"type"
|
|
187675
|
-
],
|
|
187676
|
-
"properties": {
|
|
187677
|
-
"type": {
|
|
187678
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
187679
|
-
"type": "string",
|
|
187680
|
-
"enum": [
|
|
187681
|
-
"decrease_budget_pct"
|
|
187682
|
-
]
|
|
187683
187716
|
},
|
|
187684
|
-
|
|
187717
|
+
{
|
|
187685
187718
|
"additionalProperties": false,
|
|
187686
187719
|
"type": "object",
|
|
187720
|
+
"required": [
|
|
187721
|
+
"type"
|
|
187722
|
+
],
|
|
187687
187723
|
"properties": {
|
|
187688
|
-
"
|
|
187689
|
-
"description": "
|
|
187690
|
-
"
|
|
187691
|
-
"
|
|
187692
|
-
|
|
187724
|
+
"type": {
|
|
187725
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
187726
|
+
"type": "string",
|
|
187727
|
+
"enum": [
|
|
187728
|
+
"activate"
|
|
187729
|
+
]
|
|
187693
187730
|
},
|
|
187694
|
-
"
|
|
187695
|
-
"
|
|
187696
|
-
"
|
|
187697
|
-
"maximum": 100,
|
|
187698
|
-
"type": "number"
|
|
187731
|
+
"params": {
|
|
187732
|
+
"$comment": "json-value",
|
|
187733
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187699
187734
|
}
|
|
187700
187735
|
}
|
|
187701
|
-
}
|
|
187702
|
-
}
|
|
187703
|
-
},
|
|
187704
|
-
{
|
|
187705
|
-
"additionalProperties": false,
|
|
187706
|
-
"type": "object",
|
|
187707
|
-
"required": [
|
|
187708
|
-
"type"
|
|
187709
|
-
],
|
|
187710
|
-
"properties": {
|
|
187711
|
-
"type": {
|
|
187712
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
187713
|
-
"type": "string",
|
|
187714
|
-
"enum": [
|
|
187715
|
-
"relaunch"
|
|
187716
|
-
]
|
|
187717
187736
|
},
|
|
187718
|
-
|
|
187719
|
-
"
|
|
187720
|
-
"
|
|
187721
|
-
|
|
187722
|
-
|
|
187723
|
-
|
|
187724
|
-
|
|
187725
|
-
|
|
187726
|
-
|
|
187727
|
-
"required": [
|
|
187728
|
-
"type"
|
|
187729
|
-
],
|
|
187730
|
-
"properties": {
|
|
187731
|
-
"type": {
|
|
187732
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
187733
|
-
"type": "string",
|
|
187734
|
-
"enum": [
|
|
187735
|
-
"notify_only"
|
|
187736
|
-
]
|
|
187737
|
-
},
|
|
187738
|
-
"params": {
|
|
187739
|
-
"$comment": "json-value",
|
|
187740
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187741
|
-
}
|
|
187742
|
-
}
|
|
187743
|
-
},
|
|
187744
|
-
{
|
|
187745
|
-
"additionalProperties": false,
|
|
187746
|
-
"type": "object",
|
|
187747
|
-
"required": [
|
|
187748
|
-
"type",
|
|
187749
|
-
"platform",
|
|
187750
|
-
"entity_level"
|
|
187751
|
-
],
|
|
187752
|
-
"properties": {
|
|
187753
|
-
"type": {
|
|
187754
|
-
"type": "string",
|
|
187755
|
-
"enum": [
|
|
187756
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
187757
|
-
]
|
|
187758
|
-
},
|
|
187759
|
-
"platform": {
|
|
187760
|
-
"anyOf": [
|
|
187761
|
-
{
|
|
187737
|
+
{
|
|
187738
|
+
"additionalProperties": false,
|
|
187739
|
+
"type": "object",
|
|
187740
|
+
"required": [
|
|
187741
|
+
"type"
|
|
187742
|
+
],
|
|
187743
|
+
"properties": {
|
|
187744
|
+
"type": {
|
|
187745
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
187762
187746
|
"type": "string",
|
|
187763
187747
|
"enum": [
|
|
187764
|
-
"
|
|
187748
|
+
"increase_budget_pct"
|
|
187765
187749
|
]
|
|
187766
187750
|
},
|
|
187767
|
-
{
|
|
187751
|
+
"params": {
|
|
187752
|
+
"additionalProperties": false,
|
|
187753
|
+
"type": "object",
|
|
187754
|
+
"properties": {
|
|
187755
|
+
"percentage": {
|
|
187756
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
187757
|
+
"minimum": 1,
|
|
187758
|
+
"maximum": 1000,
|
|
187759
|
+
"type": "number"
|
|
187760
|
+
},
|
|
187761
|
+
"pct": {
|
|
187762
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
187763
|
+
"minimum": 1,
|
|
187764
|
+
"maximum": 1000,
|
|
187765
|
+
"type": "number"
|
|
187766
|
+
}
|
|
187767
|
+
}
|
|
187768
|
+
}
|
|
187769
|
+
}
|
|
187770
|
+
},
|
|
187771
|
+
{
|
|
187772
|
+
"additionalProperties": false,
|
|
187773
|
+
"type": "object",
|
|
187774
|
+
"required": [
|
|
187775
|
+
"type"
|
|
187776
|
+
],
|
|
187777
|
+
"properties": {
|
|
187778
|
+
"type": {
|
|
187779
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
187768
187780
|
"type": "string",
|
|
187769
187781
|
"enum": [
|
|
187770
|
-
"
|
|
187782
|
+
"decrease_budget_pct"
|
|
187771
187783
|
]
|
|
187772
187784
|
},
|
|
187773
|
-
{
|
|
187785
|
+
"params": {
|
|
187786
|
+
"additionalProperties": false,
|
|
187787
|
+
"type": "object",
|
|
187788
|
+
"properties": {
|
|
187789
|
+
"percentage": {
|
|
187790
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
187791
|
+
"minimum": 1,
|
|
187792
|
+
"maximum": 100,
|
|
187793
|
+
"type": "number"
|
|
187794
|
+
},
|
|
187795
|
+
"pct": {
|
|
187796
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
187797
|
+
"minimum": 1,
|
|
187798
|
+
"maximum": 100,
|
|
187799
|
+
"type": "number"
|
|
187800
|
+
}
|
|
187801
|
+
}
|
|
187802
|
+
}
|
|
187803
|
+
}
|
|
187804
|
+
},
|
|
187805
|
+
{
|
|
187806
|
+
"additionalProperties": false,
|
|
187807
|
+
"type": "object",
|
|
187808
|
+
"required": [
|
|
187809
|
+
"type"
|
|
187810
|
+
],
|
|
187811
|
+
"properties": {
|
|
187812
|
+
"type": {
|
|
187813
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
187774
187814
|
"type": "string",
|
|
187775
187815
|
"enum": [
|
|
187776
|
-
"
|
|
187816
|
+
"relaunch"
|
|
187777
187817
|
]
|
|
187778
187818
|
},
|
|
187779
|
-
{
|
|
187819
|
+
"params": {
|
|
187820
|
+
"$comment": "json-value",
|
|
187821
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187822
|
+
}
|
|
187823
|
+
}
|
|
187824
|
+
},
|
|
187825
|
+
{
|
|
187826
|
+
"additionalProperties": false,
|
|
187827
|
+
"type": "object",
|
|
187828
|
+
"required": [
|
|
187829
|
+
"type"
|
|
187830
|
+
],
|
|
187831
|
+
"properties": {
|
|
187832
|
+
"type": {
|
|
187833
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
187780
187834
|
"type": "string",
|
|
187781
187835
|
"enum": [
|
|
187782
|
-
"
|
|
187836
|
+
"notify_only"
|
|
187783
187837
|
]
|
|
187784
187838
|
},
|
|
187785
|
-
{
|
|
187786
|
-
"
|
|
187787
|
-
"
|
|
187788
|
-
"LINKEDIN"
|
|
187789
|
-
]
|
|
187839
|
+
"params": {
|
|
187840
|
+
"$comment": "json-value",
|
|
187841
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187790
187842
|
}
|
|
187791
|
-
|
|
187843
|
+
}
|
|
187792
187844
|
},
|
|
187793
|
-
|
|
187794
|
-
"
|
|
187795
|
-
"
|
|
187796
|
-
|
|
187797
|
-
|
|
187798
|
-
|
|
187799
|
-
|
|
187800
|
-
|
|
187801
|
-
|
|
187802
|
-
|
|
187803
|
-
"type": "object",
|
|
187804
|
-
"required": [
|
|
187805
|
-
"type",
|
|
187806
|
-
"platform",
|
|
187807
|
-
"entity_level",
|
|
187808
|
-
"pct"
|
|
187809
|
-
],
|
|
187810
|
-
"properties": {
|
|
187811
|
-
"type": {
|
|
187812
|
-
"anyOf": [
|
|
187813
|
-
{
|
|
187845
|
+
{
|
|
187846
|
+
"additionalProperties": false,
|
|
187847
|
+
"type": "object",
|
|
187848
|
+
"required": [
|
|
187849
|
+
"type",
|
|
187850
|
+
"platform",
|
|
187851
|
+
"entity_level"
|
|
187852
|
+
],
|
|
187853
|
+
"properties": {
|
|
187854
|
+
"type": {
|
|
187814
187855
|
"type": "string",
|
|
187815
187856
|
"enum": [
|
|
187816
|
-
"
|
|
187857
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
187817
187858
|
]
|
|
187818
187859
|
},
|
|
187819
|
-
{
|
|
187860
|
+
"platform": {
|
|
187861
|
+
"anyOf": [
|
|
187862
|
+
{
|
|
187863
|
+
"type": "string",
|
|
187864
|
+
"enum": [
|
|
187865
|
+
"META"
|
|
187866
|
+
]
|
|
187867
|
+
},
|
|
187868
|
+
{
|
|
187869
|
+
"type": "string",
|
|
187870
|
+
"enum": [
|
|
187871
|
+
"GOOGLE"
|
|
187872
|
+
]
|
|
187873
|
+
},
|
|
187874
|
+
{
|
|
187875
|
+
"type": "string",
|
|
187876
|
+
"enum": [
|
|
187877
|
+
"TIKTOK"
|
|
187878
|
+
]
|
|
187879
|
+
},
|
|
187880
|
+
{
|
|
187881
|
+
"type": "string",
|
|
187882
|
+
"enum": [
|
|
187883
|
+
"TABOOLA"
|
|
187884
|
+
]
|
|
187885
|
+
},
|
|
187886
|
+
{
|
|
187887
|
+
"type": "string",
|
|
187888
|
+
"enum": [
|
|
187889
|
+
"LINKEDIN"
|
|
187890
|
+
]
|
|
187891
|
+
}
|
|
187892
|
+
]
|
|
187893
|
+
},
|
|
187894
|
+
"entity_level": {
|
|
187820
187895
|
"type": "string",
|
|
187821
187896
|
"enum": [
|
|
187822
|
-
"
|
|
187897
|
+
"campaign"
|
|
187823
187898
|
]
|
|
187824
187899
|
}
|
|
187825
|
-
|
|
187900
|
+
}
|
|
187826
187901
|
},
|
|
187827
|
-
|
|
187828
|
-
"
|
|
187829
|
-
|
|
187830
|
-
|
|
187831
|
-
|
|
187832
|
-
|
|
187902
|
+
{
|
|
187903
|
+
"additionalProperties": false,
|
|
187904
|
+
"type": "object",
|
|
187905
|
+
"required": [
|
|
187906
|
+
"type",
|
|
187907
|
+
"platform",
|
|
187908
|
+
"entity_level",
|
|
187909
|
+
"pct"
|
|
187910
|
+
],
|
|
187911
|
+
"properties": {
|
|
187912
|
+
"type": {
|
|
187913
|
+
"anyOf": [
|
|
187914
|
+
{
|
|
187915
|
+
"type": "string",
|
|
187916
|
+
"enum": [
|
|
187917
|
+
"INCREASE_BUDGET_PCT"
|
|
187918
|
+
]
|
|
187919
|
+
},
|
|
187920
|
+
{
|
|
187921
|
+
"type": "string",
|
|
187922
|
+
"enum": [
|
|
187923
|
+
"DECREASE_BUDGET_PCT"
|
|
187924
|
+
]
|
|
187925
|
+
}
|
|
187833
187926
|
]
|
|
187834
187927
|
},
|
|
187835
|
-
{
|
|
187836
|
-
"
|
|
187837
|
-
|
|
187838
|
-
|
|
187928
|
+
"platform": {
|
|
187929
|
+
"anyOf": [
|
|
187930
|
+
{
|
|
187931
|
+
"type": "string",
|
|
187932
|
+
"enum": [
|
|
187933
|
+
"META"
|
|
187934
|
+
]
|
|
187935
|
+
},
|
|
187936
|
+
{
|
|
187937
|
+
"type": "string",
|
|
187938
|
+
"enum": [
|
|
187939
|
+
"GOOGLE"
|
|
187940
|
+
]
|
|
187941
|
+
},
|
|
187942
|
+
{
|
|
187943
|
+
"type": "string",
|
|
187944
|
+
"enum": [
|
|
187945
|
+
"TIKTOK"
|
|
187946
|
+
]
|
|
187947
|
+
},
|
|
187948
|
+
{
|
|
187949
|
+
"type": "string",
|
|
187950
|
+
"enum": [
|
|
187951
|
+
"TABOOLA"
|
|
187952
|
+
]
|
|
187953
|
+
},
|
|
187954
|
+
{
|
|
187955
|
+
"type": "string",
|
|
187956
|
+
"enum": [
|
|
187957
|
+
"LINKEDIN"
|
|
187958
|
+
]
|
|
187959
|
+
}
|
|
187839
187960
|
]
|
|
187840
187961
|
},
|
|
187841
|
-
{
|
|
187962
|
+
"entity_level": {
|
|
187842
187963
|
"type": "string",
|
|
187843
187964
|
"enum": [
|
|
187844
|
-
"
|
|
187965
|
+
"campaign"
|
|
187845
187966
|
]
|
|
187846
187967
|
},
|
|
187847
|
-
{
|
|
187968
|
+
"pct": {
|
|
187969
|
+
"minimum": 1,
|
|
187970
|
+
"maximum": 100,
|
|
187971
|
+
"type": "number"
|
|
187972
|
+
}
|
|
187973
|
+
}
|
|
187974
|
+
},
|
|
187975
|
+
{
|
|
187976
|
+
"additionalProperties": false,
|
|
187977
|
+
"type": "object",
|
|
187978
|
+
"required": [
|
|
187979
|
+
"type",
|
|
187980
|
+
"channel",
|
|
187981
|
+
"message_template"
|
|
187982
|
+
],
|
|
187983
|
+
"properties": {
|
|
187984
|
+
"type": {
|
|
187848
187985
|
"type": "string",
|
|
187849
187986
|
"enum": [
|
|
187850
|
-
"
|
|
187987
|
+
"NOTIFY_CHANNEL"
|
|
187851
187988
|
]
|
|
187852
187989
|
},
|
|
187853
|
-
{
|
|
187854
|
-
"
|
|
187855
|
-
|
|
187856
|
-
|
|
187990
|
+
"channel": {
|
|
187991
|
+
"anyOf": [
|
|
187992
|
+
{
|
|
187993
|
+
"type": "string",
|
|
187994
|
+
"enum": [
|
|
187995
|
+
"in_app"
|
|
187996
|
+
]
|
|
187997
|
+
},
|
|
187998
|
+
{
|
|
187999
|
+
"type": "string",
|
|
188000
|
+
"enum": [
|
|
188001
|
+
"email"
|
|
188002
|
+
]
|
|
188003
|
+
},
|
|
188004
|
+
{
|
|
188005
|
+
"type": "string",
|
|
188006
|
+
"enum": [
|
|
188007
|
+
"telegram"
|
|
188008
|
+
]
|
|
188009
|
+
}
|
|
187857
188010
|
]
|
|
188011
|
+
},
|
|
188012
|
+
"message_template": {
|
|
188013
|
+
"minLength": 1,
|
|
188014
|
+
"maxLength": 500,
|
|
188015
|
+
"type": "string"
|
|
187858
188016
|
}
|
|
187859
|
-
|
|
187860
|
-
},
|
|
187861
|
-
"entity_level": {
|
|
187862
|
-
"type": "string",
|
|
187863
|
-
"enum": [
|
|
187864
|
-
"campaign"
|
|
187865
|
-
]
|
|
187866
|
-
},
|
|
187867
|
-
"pct": {
|
|
187868
|
-
"minimum": 1,
|
|
187869
|
-
"maximum": 100,
|
|
187870
|
-
"type": "number"
|
|
188017
|
+
}
|
|
187871
188018
|
}
|
|
187872
|
-
|
|
188019
|
+
]
|
|
187873
188020
|
},
|
|
187874
188021
|
{
|
|
187875
|
-
"additionalProperties":
|
|
188022
|
+
"additionalProperties": true,
|
|
188023
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
187876
188024
|
"type": "object",
|
|
187877
188025
|
"required": [
|
|
187878
|
-
"type"
|
|
187879
|
-
"channel",
|
|
187880
|
-
"message_template"
|
|
188026
|
+
"type"
|
|
187881
188027
|
],
|
|
187882
188028
|
"properties": {
|
|
187883
188029
|
"type": {
|
|
187884
|
-
"
|
|
187885
|
-
"enum": [
|
|
187886
|
-
"NOTIFY_CHANNEL"
|
|
187887
|
-
]
|
|
187888
|
-
},
|
|
187889
|
-
"channel": {
|
|
187890
|
-
"anyOf": [
|
|
187891
|
-
{
|
|
187892
|
-
"type": "string",
|
|
187893
|
-
"enum": [
|
|
187894
|
-
"in_app"
|
|
187895
|
-
]
|
|
187896
|
-
},
|
|
187897
|
-
{
|
|
187898
|
-
"type": "string",
|
|
187899
|
-
"enum": [
|
|
187900
|
-
"email"
|
|
187901
|
-
]
|
|
187902
|
-
},
|
|
187903
|
-
{
|
|
187904
|
-
"type": "string",
|
|
187905
|
-
"enum": [
|
|
187906
|
-
"telegram"
|
|
187907
|
-
]
|
|
187908
|
-
}
|
|
187909
|
-
]
|
|
187910
|
-
},
|
|
187911
|
-
"message_template": {
|
|
187912
|
-
"minLength": 1,
|
|
187913
|
-
"maxLength": 500,
|
|
188030
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
187914
188031
|
"type": "string"
|
|
188032
|
+
},
|
|
188033
|
+
"params": {
|
|
188034
|
+
"$comment": "json-value",
|
|
188035
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
187915
188036
|
}
|
|
187916
188037
|
}
|
|
187917
188038
|
}
|
|
@@ -189374,330 +189495,352 @@
|
|
|
189374
189495
|
}
|
|
189375
189496
|
},
|
|
189376
189497
|
"actions": {
|
|
189377
|
-
"description": "Ordered list of actions
|
|
189498
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
189378
189499
|
"type": "array",
|
|
189379
189500
|
"items": {
|
|
189380
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
189381
189501
|
"anyOf": [
|
|
189382
189502
|
{
|
|
189383
|
-
"
|
|
189384
|
-
"
|
|
189385
|
-
|
|
189386
|
-
"type"
|
|
189387
|
-
],
|
|
189388
|
-
"properties": {
|
|
189389
|
-
"type": {
|
|
189390
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
189391
|
-
"type": "string",
|
|
189392
|
-
"enum": [
|
|
189393
|
-
"pause"
|
|
189394
|
-
]
|
|
189395
|
-
},
|
|
189396
|
-
"params": {
|
|
189397
|
-
"$comment": "json-value",
|
|
189398
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189399
|
-
}
|
|
189400
|
-
}
|
|
189401
|
-
},
|
|
189402
|
-
{
|
|
189403
|
-
"additionalProperties": false,
|
|
189404
|
-
"type": "object",
|
|
189405
|
-
"required": [
|
|
189406
|
-
"type"
|
|
189407
|
-
],
|
|
189408
|
-
"properties": {
|
|
189409
|
-
"type": {
|
|
189410
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
189411
|
-
"type": "string",
|
|
189412
|
-
"enum": [
|
|
189413
|
-
"activate"
|
|
189414
|
-
]
|
|
189415
|
-
},
|
|
189416
|
-
"params": {
|
|
189417
|
-
"$comment": "json-value",
|
|
189418
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189419
|
-
}
|
|
189420
|
-
}
|
|
189421
|
-
},
|
|
189422
|
-
{
|
|
189423
|
-
"additionalProperties": false,
|
|
189424
|
-
"type": "object",
|
|
189425
|
-
"required": [
|
|
189426
|
-
"type"
|
|
189427
|
-
],
|
|
189428
|
-
"properties": {
|
|
189429
|
-
"type": {
|
|
189430
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
189431
|
-
"type": "string",
|
|
189432
|
-
"enum": [
|
|
189433
|
-
"increase_budget_pct"
|
|
189434
|
-
]
|
|
189435
|
-
},
|
|
189436
|
-
"params": {
|
|
189503
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
189504
|
+
"anyOf": [
|
|
189505
|
+
{
|
|
189437
189506
|
"additionalProperties": false,
|
|
189438
189507
|
"type": "object",
|
|
189508
|
+
"required": [
|
|
189509
|
+
"type"
|
|
189510
|
+
],
|
|
189439
189511
|
"properties": {
|
|
189440
|
-
"
|
|
189441
|
-
"description": "
|
|
189442
|
-
"
|
|
189443
|
-
"
|
|
189444
|
-
|
|
189512
|
+
"type": {
|
|
189513
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
189514
|
+
"type": "string",
|
|
189515
|
+
"enum": [
|
|
189516
|
+
"pause"
|
|
189517
|
+
]
|
|
189445
189518
|
},
|
|
189446
|
-
"
|
|
189447
|
-
"
|
|
189448
|
-
"
|
|
189449
|
-
"maximum": 100,
|
|
189450
|
-
"type": "number"
|
|
189519
|
+
"params": {
|
|
189520
|
+
"$comment": "json-value",
|
|
189521
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189451
189522
|
}
|
|
189452
189523
|
}
|
|
189453
|
-
}
|
|
189454
|
-
}
|
|
189455
|
-
},
|
|
189456
|
-
{
|
|
189457
|
-
"additionalProperties": false,
|
|
189458
|
-
"type": "object",
|
|
189459
|
-
"required": [
|
|
189460
|
-
"type"
|
|
189461
|
-
],
|
|
189462
|
-
"properties": {
|
|
189463
|
-
"type": {
|
|
189464
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
189465
|
-
"type": "string",
|
|
189466
|
-
"enum": [
|
|
189467
|
-
"decrease_budget_pct"
|
|
189468
|
-
]
|
|
189469
189524
|
},
|
|
189470
|
-
|
|
189525
|
+
{
|
|
189471
189526
|
"additionalProperties": false,
|
|
189472
189527
|
"type": "object",
|
|
189528
|
+
"required": [
|
|
189529
|
+
"type"
|
|
189530
|
+
],
|
|
189473
189531
|
"properties": {
|
|
189474
|
-
"
|
|
189475
|
-
"description": "
|
|
189476
|
-
"
|
|
189477
|
-
"
|
|
189478
|
-
|
|
189532
|
+
"type": {
|
|
189533
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
189534
|
+
"type": "string",
|
|
189535
|
+
"enum": [
|
|
189536
|
+
"activate"
|
|
189537
|
+
]
|
|
189479
189538
|
},
|
|
189480
|
-
"
|
|
189481
|
-
"
|
|
189482
|
-
"
|
|
189483
|
-
"maximum": 100,
|
|
189484
|
-
"type": "number"
|
|
189539
|
+
"params": {
|
|
189540
|
+
"$comment": "json-value",
|
|
189541
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189485
189542
|
}
|
|
189486
189543
|
}
|
|
189487
|
-
}
|
|
189488
|
-
}
|
|
189489
|
-
},
|
|
189490
|
-
{
|
|
189491
|
-
"additionalProperties": false,
|
|
189492
|
-
"type": "object",
|
|
189493
|
-
"required": [
|
|
189494
|
-
"type"
|
|
189495
|
-
],
|
|
189496
|
-
"properties": {
|
|
189497
|
-
"type": {
|
|
189498
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
189499
|
-
"type": "string",
|
|
189500
|
-
"enum": [
|
|
189501
|
-
"relaunch"
|
|
189502
|
-
]
|
|
189503
189544
|
},
|
|
189504
|
-
|
|
189505
|
-
"
|
|
189506
|
-
"
|
|
189507
|
-
|
|
189508
|
-
|
|
189509
|
-
|
|
189510
|
-
|
|
189511
|
-
|
|
189512
|
-
|
|
189513
|
-
"required": [
|
|
189514
|
-
"type"
|
|
189515
|
-
],
|
|
189516
|
-
"properties": {
|
|
189517
|
-
"type": {
|
|
189518
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
189519
|
-
"type": "string",
|
|
189520
|
-
"enum": [
|
|
189521
|
-
"notify_only"
|
|
189522
|
-
]
|
|
189523
|
-
},
|
|
189524
|
-
"params": {
|
|
189525
|
-
"$comment": "json-value",
|
|
189526
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189527
|
-
}
|
|
189528
|
-
}
|
|
189529
|
-
},
|
|
189530
|
-
{
|
|
189531
|
-
"additionalProperties": false,
|
|
189532
|
-
"type": "object",
|
|
189533
|
-
"required": [
|
|
189534
|
-
"type",
|
|
189535
|
-
"platform",
|
|
189536
|
-
"entity_level"
|
|
189537
|
-
],
|
|
189538
|
-
"properties": {
|
|
189539
|
-
"type": {
|
|
189540
|
-
"type": "string",
|
|
189541
|
-
"enum": [
|
|
189542
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
189543
|
-
]
|
|
189544
|
-
},
|
|
189545
|
-
"platform": {
|
|
189546
|
-
"anyOf": [
|
|
189547
|
-
{
|
|
189545
|
+
{
|
|
189546
|
+
"additionalProperties": false,
|
|
189547
|
+
"type": "object",
|
|
189548
|
+
"required": [
|
|
189549
|
+
"type"
|
|
189550
|
+
],
|
|
189551
|
+
"properties": {
|
|
189552
|
+
"type": {
|
|
189553
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
189548
189554
|
"type": "string",
|
|
189549
189555
|
"enum": [
|
|
189550
|
-
"
|
|
189556
|
+
"increase_budget_pct"
|
|
189551
189557
|
]
|
|
189552
189558
|
},
|
|
189553
|
-
{
|
|
189559
|
+
"params": {
|
|
189560
|
+
"additionalProperties": false,
|
|
189561
|
+
"type": "object",
|
|
189562
|
+
"properties": {
|
|
189563
|
+
"percentage": {
|
|
189564
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
189565
|
+
"minimum": 1,
|
|
189566
|
+
"maximum": 1000,
|
|
189567
|
+
"type": "number"
|
|
189568
|
+
},
|
|
189569
|
+
"pct": {
|
|
189570
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
189571
|
+
"minimum": 1,
|
|
189572
|
+
"maximum": 1000,
|
|
189573
|
+
"type": "number"
|
|
189574
|
+
}
|
|
189575
|
+
}
|
|
189576
|
+
}
|
|
189577
|
+
}
|
|
189578
|
+
},
|
|
189579
|
+
{
|
|
189580
|
+
"additionalProperties": false,
|
|
189581
|
+
"type": "object",
|
|
189582
|
+
"required": [
|
|
189583
|
+
"type"
|
|
189584
|
+
],
|
|
189585
|
+
"properties": {
|
|
189586
|
+
"type": {
|
|
189587
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
189554
189588
|
"type": "string",
|
|
189555
189589
|
"enum": [
|
|
189556
|
-
"
|
|
189590
|
+
"decrease_budget_pct"
|
|
189557
189591
|
]
|
|
189558
189592
|
},
|
|
189559
|
-
{
|
|
189593
|
+
"params": {
|
|
189594
|
+
"additionalProperties": false,
|
|
189595
|
+
"type": "object",
|
|
189596
|
+
"properties": {
|
|
189597
|
+
"percentage": {
|
|
189598
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
189599
|
+
"minimum": 1,
|
|
189600
|
+
"maximum": 100,
|
|
189601
|
+
"type": "number"
|
|
189602
|
+
},
|
|
189603
|
+
"pct": {
|
|
189604
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
189605
|
+
"minimum": 1,
|
|
189606
|
+
"maximum": 100,
|
|
189607
|
+
"type": "number"
|
|
189608
|
+
}
|
|
189609
|
+
}
|
|
189610
|
+
}
|
|
189611
|
+
}
|
|
189612
|
+
},
|
|
189613
|
+
{
|
|
189614
|
+
"additionalProperties": false,
|
|
189615
|
+
"type": "object",
|
|
189616
|
+
"required": [
|
|
189617
|
+
"type"
|
|
189618
|
+
],
|
|
189619
|
+
"properties": {
|
|
189620
|
+
"type": {
|
|
189621
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
189560
189622
|
"type": "string",
|
|
189561
189623
|
"enum": [
|
|
189562
|
-
"
|
|
189624
|
+
"relaunch"
|
|
189563
189625
|
]
|
|
189564
189626
|
},
|
|
189565
|
-
{
|
|
189627
|
+
"params": {
|
|
189628
|
+
"$comment": "json-value",
|
|
189629
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189630
|
+
}
|
|
189631
|
+
}
|
|
189632
|
+
},
|
|
189633
|
+
{
|
|
189634
|
+
"additionalProperties": false,
|
|
189635
|
+
"type": "object",
|
|
189636
|
+
"required": [
|
|
189637
|
+
"type"
|
|
189638
|
+
],
|
|
189639
|
+
"properties": {
|
|
189640
|
+
"type": {
|
|
189641
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
189566
189642
|
"type": "string",
|
|
189567
189643
|
"enum": [
|
|
189568
|
-
"
|
|
189644
|
+
"notify_only"
|
|
189569
189645
|
]
|
|
189570
189646
|
},
|
|
189571
|
-
{
|
|
189572
|
-
"
|
|
189573
|
-
"
|
|
189574
|
-
"LINKEDIN"
|
|
189575
|
-
]
|
|
189647
|
+
"params": {
|
|
189648
|
+
"$comment": "json-value",
|
|
189649
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189576
189650
|
}
|
|
189577
|
-
|
|
189651
|
+
}
|
|
189578
189652
|
},
|
|
189579
|
-
|
|
189580
|
-
"
|
|
189581
|
-
"
|
|
189582
|
-
|
|
189583
|
-
|
|
189584
|
-
|
|
189585
|
-
|
|
189586
|
-
|
|
189587
|
-
|
|
189588
|
-
|
|
189589
|
-
"type": "object",
|
|
189590
|
-
"required": [
|
|
189591
|
-
"type",
|
|
189592
|
-
"platform",
|
|
189593
|
-
"entity_level",
|
|
189594
|
-
"pct"
|
|
189595
|
-
],
|
|
189596
|
-
"properties": {
|
|
189597
|
-
"type": {
|
|
189598
|
-
"anyOf": [
|
|
189599
|
-
{
|
|
189653
|
+
{
|
|
189654
|
+
"additionalProperties": false,
|
|
189655
|
+
"type": "object",
|
|
189656
|
+
"required": [
|
|
189657
|
+
"type",
|
|
189658
|
+
"platform",
|
|
189659
|
+
"entity_level"
|
|
189660
|
+
],
|
|
189661
|
+
"properties": {
|
|
189662
|
+
"type": {
|
|
189600
189663
|
"type": "string",
|
|
189601
189664
|
"enum": [
|
|
189602
|
-
"
|
|
189665
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
189603
189666
|
]
|
|
189604
189667
|
},
|
|
189605
|
-
{
|
|
189668
|
+
"platform": {
|
|
189669
|
+
"anyOf": [
|
|
189670
|
+
{
|
|
189671
|
+
"type": "string",
|
|
189672
|
+
"enum": [
|
|
189673
|
+
"META"
|
|
189674
|
+
]
|
|
189675
|
+
},
|
|
189676
|
+
{
|
|
189677
|
+
"type": "string",
|
|
189678
|
+
"enum": [
|
|
189679
|
+
"GOOGLE"
|
|
189680
|
+
]
|
|
189681
|
+
},
|
|
189682
|
+
{
|
|
189683
|
+
"type": "string",
|
|
189684
|
+
"enum": [
|
|
189685
|
+
"TIKTOK"
|
|
189686
|
+
]
|
|
189687
|
+
},
|
|
189688
|
+
{
|
|
189689
|
+
"type": "string",
|
|
189690
|
+
"enum": [
|
|
189691
|
+
"TABOOLA"
|
|
189692
|
+
]
|
|
189693
|
+
},
|
|
189694
|
+
{
|
|
189695
|
+
"type": "string",
|
|
189696
|
+
"enum": [
|
|
189697
|
+
"LINKEDIN"
|
|
189698
|
+
]
|
|
189699
|
+
}
|
|
189700
|
+
]
|
|
189701
|
+
},
|
|
189702
|
+
"entity_level": {
|
|
189606
189703
|
"type": "string",
|
|
189607
189704
|
"enum": [
|
|
189608
|
-
"
|
|
189705
|
+
"campaign"
|
|
189609
189706
|
]
|
|
189610
189707
|
}
|
|
189611
|
-
|
|
189708
|
+
}
|
|
189612
189709
|
},
|
|
189613
|
-
|
|
189614
|
-
"
|
|
189615
|
-
|
|
189616
|
-
|
|
189617
|
-
|
|
189618
|
-
|
|
189710
|
+
{
|
|
189711
|
+
"additionalProperties": false,
|
|
189712
|
+
"type": "object",
|
|
189713
|
+
"required": [
|
|
189714
|
+
"type",
|
|
189715
|
+
"platform",
|
|
189716
|
+
"entity_level",
|
|
189717
|
+
"pct"
|
|
189718
|
+
],
|
|
189719
|
+
"properties": {
|
|
189720
|
+
"type": {
|
|
189721
|
+
"anyOf": [
|
|
189722
|
+
{
|
|
189723
|
+
"type": "string",
|
|
189724
|
+
"enum": [
|
|
189725
|
+
"INCREASE_BUDGET_PCT"
|
|
189726
|
+
]
|
|
189727
|
+
},
|
|
189728
|
+
{
|
|
189729
|
+
"type": "string",
|
|
189730
|
+
"enum": [
|
|
189731
|
+
"DECREASE_BUDGET_PCT"
|
|
189732
|
+
]
|
|
189733
|
+
}
|
|
189619
189734
|
]
|
|
189620
189735
|
},
|
|
189621
|
-
{
|
|
189622
|
-
"
|
|
189623
|
-
|
|
189624
|
-
|
|
189736
|
+
"platform": {
|
|
189737
|
+
"anyOf": [
|
|
189738
|
+
{
|
|
189739
|
+
"type": "string",
|
|
189740
|
+
"enum": [
|
|
189741
|
+
"META"
|
|
189742
|
+
]
|
|
189743
|
+
},
|
|
189744
|
+
{
|
|
189745
|
+
"type": "string",
|
|
189746
|
+
"enum": [
|
|
189747
|
+
"GOOGLE"
|
|
189748
|
+
]
|
|
189749
|
+
},
|
|
189750
|
+
{
|
|
189751
|
+
"type": "string",
|
|
189752
|
+
"enum": [
|
|
189753
|
+
"TIKTOK"
|
|
189754
|
+
]
|
|
189755
|
+
},
|
|
189756
|
+
{
|
|
189757
|
+
"type": "string",
|
|
189758
|
+
"enum": [
|
|
189759
|
+
"TABOOLA"
|
|
189760
|
+
]
|
|
189761
|
+
},
|
|
189762
|
+
{
|
|
189763
|
+
"type": "string",
|
|
189764
|
+
"enum": [
|
|
189765
|
+
"LINKEDIN"
|
|
189766
|
+
]
|
|
189767
|
+
}
|
|
189625
189768
|
]
|
|
189626
189769
|
},
|
|
189627
|
-
{
|
|
189770
|
+
"entity_level": {
|
|
189628
189771
|
"type": "string",
|
|
189629
189772
|
"enum": [
|
|
189630
|
-
"
|
|
189773
|
+
"campaign"
|
|
189631
189774
|
]
|
|
189632
189775
|
},
|
|
189633
|
-
{
|
|
189776
|
+
"pct": {
|
|
189777
|
+
"minimum": 1,
|
|
189778
|
+
"maximum": 100,
|
|
189779
|
+
"type": "number"
|
|
189780
|
+
}
|
|
189781
|
+
}
|
|
189782
|
+
},
|
|
189783
|
+
{
|
|
189784
|
+
"additionalProperties": false,
|
|
189785
|
+
"type": "object",
|
|
189786
|
+
"required": [
|
|
189787
|
+
"type",
|
|
189788
|
+
"channel",
|
|
189789
|
+
"message_template"
|
|
189790
|
+
],
|
|
189791
|
+
"properties": {
|
|
189792
|
+
"type": {
|
|
189634
189793
|
"type": "string",
|
|
189635
189794
|
"enum": [
|
|
189636
|
-
"
|
|
189795
|
+
"NOTIFY_CHANNEL"
|
|
189637
189796
|
]
|
|
189638
189797
|
},
|
|
189639
|
-
{
|
|
189640
|
-
"
|
|
189641
|
-
|
|
189642
|
-
|
|
189798
|
+
"channel": {
|
|
189799
|
+
"anyOf": [
|
|
189800
|
+
{
|
|
189801
|
+
"type": "string",
|
|
189802
|
+
"enum": [
|
|
189803
|
+
"in_app"
|
|
189804
|
+
]
|
|
189805
|
+
},
|
|
189806
|
+
{
|
|
189807
|
+
"type": "string",
|
|
189808
|
+
"enum": [
|
|
189809
|
+
"email"
|
|
189810
|
+
]
|
|
189811
|
+
},
|
|
189812
|
+
{
|
|
189813
|
+
"type": "string",
|
|
189814
|
+
"enum": [
|
|
189815
|
+
"telegram"
|
|
189816
|
+
]
|
|
189817
|
+
}
|
|
189643
189818
|
]
|
|
189819
|
+
},
|
|
189820
|
+
"message_template": {
|
|
189821
|
+
"minLength": 1,
|
|
189822
|
+
"maxLength": 500,
|
|
189823
|
+
"type": "string"
|
|
189644
189824
|
}
|
|
189645
|
-
|
|
189646
|
-
},
|
|
189647
|
-
"entity_level": {
|
|
189648
|
-
"type": "string",
|
|
189649
|
-
"enum": [
|
|
189650
|
-
"campaign"
|
|
189651
|
-
]
|
|
189652
|
-
},
|
|
189653
|
-
"pct": {
|
|
189654
|
-
"minimum": 1,
|
|
189655
|
-
"maximum": 100,
|
|
189656
|
-
"type": "number"
|
|
189825
|
+
}
|
|
189657
189826
|
}
|
|
189658
|
-
|
|
189827
|
+
]
|
|
189659
189828
|
},
|
|
189660
189829
|
{
|
|
189661
|
-
"additionalProperties":
|
|
189830
|
+
"additionalProperties": true,
|
|
189831
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
189662
189832
|
"type": "object",
|
|
189663
189833
|
"required": [
|
|
189664
|
-
"type"
|
|
189665
|
-
"channel",
|
|
189666
|
-
"message_template"
|
|
189834
|
+
"type"
|
|
189667
189835
|
],
|
|
189668
189836
|
"properties": {
|
|
189669
189837
|
"type": {
|
|
189670
|
-
"
|
|
189671
|
-
"enum": [
|
|
189672
|
-
"NOTIFY_CHANNEL"
|
|
189673
|
-
]
|
|
189674
|
-
},
|
|
189675
|
-
"channel": {
|
|
189676
|
-
"anyOf": [
|
|
189677
|
-
{
|
|
189678
|
-
"type": "string",
|
|
189679
|
-
"enum": [
|
|
189680
|
-
"in_app"
|
|
189681
|
-
]
|
|
189682
|
-
},
|
|
189683
|
-
{
|
|
189684
|
-
"type": "string",
|
|
189685
|
-
"enum": [
|
|
189686
|
-
"email"
|
|
189687
|
-
]
|
|
189688
|
-
},
|
|
189689
|
-
{
|
|
189690
|
-
"type": "string",
|
|
189691
|
-
"enum": [
|
|
189692
|
-
"telegram"
|
|
189693
|
-
]
|
|
189694
|
-
}
|
|
189695
|
-
]
|
|
189696
|
-
},
|
|
189697
|
-
"message_template": {
|
|
189698
|
-
"minLength": 1,
|
|
189699
|
-
"maxLength": 500,
|
|
189838
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
189700
189839
|
"type": "string"
|
|
189840
|
+
},
|
|
189841
|
+
"params": {
|
|
189842
|
+
"$comment": "json-value",
|
|
189843
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
189701
189844
|
}
|
|
189702
189845
|
}
|
|
189703
189846
|
}
|
|
@@ -190945,330 +191088,352 @@
|
|
|
190945
191088
|
}
|
|
190946
191089
|
},
|
|
190947
191090
|
"actions": {
|
|
190948
|
-
"description": "Ordered list of actions
|
|
191091
|
+
"description": "Ordered list of actions as stored, tolerant of rules written before the current schema.",
|
|
190949
191092
|
"type": "array",
|
|
190950
191093
|
"items": {
|
|
190951
|
-
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
190952
191094
|
"anyOf": [
|
|
190953
191095
|
{
|
|
190954
|
-
"
|
|
190955
|
-
"
|
|
190956
|
-
|
|
190957
|
-
"type"
|
|
190958
|
-
],
|
|
190959
|
-
"properties": {
|
|
190960
|
-
"type": {
|
|
190961
|
-
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
190962
|
-
"type": "string",
|
|
190963
|
-
"enum": [
|
|
190964
|
-
"pause"
|
|
190965
|
-
]
|
|
190966
|
-
},
|
|
190967
|
-
"params": {
|
|
190968
|
-
"$comment": "json-value",
|
|
190969
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
190970
|
-
}
|
|
190971
|
-
}
|
|
190972
|
-
},
|
|
190973
|
-
{
|
|
190974
|
-
"additionalProperties": false,
|
|
190975
|
-
"type": "object",
|
|
190976
|
-
"required": [
|
|
190977
|
-
"type"
|
|
190978
|
-
],
|
|
190979
|
-
"properties": {
|
|
190980
|
-
"type": {
|
|
190981
|
-
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
190982
|
-
"type": "string",
|
|
190983
|
-
"enum": [
|
|
190984
|
-
"activate"
|
|
190985
|
-
]
|
|
190986
|
-
},
|
|
190987
|
-
"params": {
|
|
190988
|
-
"$comment": "json-value",
|
|
190989
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
190990
|
-
}
|
|
190991
|
-
}
|
|
190992
|
-
},
|
|
190993
|
-
{
|
|
190994
|
-
"additionalProperties": false,
|
|
190995
|
-
"type": "object",
|
|
190996
|
-
"required": [
|
|
190997
|
-
"type"
|
|
190998
|
-
],
|
|
190999
|
-
"properties": {
|
|
191000
|
-
"type": {
|
|
191001
|
-
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
191002
|
-
"type": "string",
|
|
191003
|
-
"enum": [
|
|
191004
|
-
"increase_budget_pct"
|
|
191005
|
-
]
|
|
191006
|
-
},
|
|
191007
|
-
"params": {
|
|
191096
|
+
"description": "Automation rule action. Discriminated on `type`. See RuleActionType in src/sqs/types/messages.ts.",
|
|
191097
|
+
"anyOf": [
|
|
191098
|
+
{
|
|
191008
191099
|
"additionalProperties": false,
|
|
191009
191100
|
"type": "object",
|
|
191101
|
+
"required": [
|
|
191102
|
+
"type"
|
|
191103
|
+
],
|
|
191010
191104
|
"properties": {
|
|
191011
|
-
"
|
|
191012
|
-
"description": "
|
|
191013
|
-
"
|
|
191014
|
-
"
|
|
191015
|
-
|
|
191105
|
+
"type": {
|
|
191106
|
+
"description": "Pause the matched entity (campaign/adset/ad).",
|
|
191107
|
+
"type": "string",
|
|
191108
|
+
"enum": [
|
|
191109
|
+
"pause"
|
|
191110
|
+
]
|
|
191016
191111
|
},
|
|
191017
|
-
"
|
|
191018
|
-
"
|
|
191019
|
-
"
|
|
191020
|
-
"maximum": 100,
|
|
191021
|
-
"type": "number"
|
|
191112
|
+
"params": {
|
|
191113
|
+
"$comment": "json-value",
|
|
191114
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
191022
191115
|
}
|
|
191023
191116
|
}
|
|
191024
|
-
}
|
|
191025
|
-
}
|
|
191026
|
-
},
|
|
191027
|
-
{
|
|
191028
|
-
"additionalProperties": false,
|
|
191029
|
-
"type": "object",
|
|
191030
|
-
"required": [
|
|
191031
|
-
"type"
|
|
191032
|
-
],
|
|
191033
|
-
"properties": {
|
|
191034
|
-
"type": {
|
|
191035
|
-
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
191036
|
-
"type": "string",
|
|
191037
|
-
"enum": [
|
|
191038
|
-
"decrease_budget_pct"
|
|
191039
|
-
]
|
|
191040
191117
|
},
|
|
191041
|
-
|
|
191118
|
+
{
|
|
191042
191119
|
"additionalProperties": false,
|
|
191043
191120
|
"type": "object",
|
|
191121
|
+
"required": [
|
|
191122
|
+
"type"
|
|
191123
|
+
],
|
|
191044
191124
|
"properties": {
|
|
191045
|
-
"
|
|
191046
|
-
"description": "
|
|
191047
|
-
"
|
|
191048
|
-
"
|
|
191049
|
-
|
|
191125
|
+
"type": {
|
|
191126
|
+
"description": "Activate the matched entity (campaign/adset/ad).",
|
|
191127
|
+
"type": "string",
|
|
191128
|
+
"enum": [
|
|
191129
|
+
"activate"
|
|
191130
|
+
]
|
|
191050
191131
|
},
|
|
191051
|
-
"
|
|
191052
|
-
"
|
|
191053
|
-
"
|
|
191054
|
-
"maximum": 100,
|
|
191055
|
-
"type": "number"
|
|
191132
|
+
"params": {
|
|
191133
|
+
"$comment": "json-value",
|
|
191134
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
191056
191135
|
}
|
|
191057
191136
|
}
|
|
191058
|
-
}
|
|
191059
|
-
}
|
|
191060
|
-
},
|
|
191061
|
-
{
|
|
191062
|
-
"additionalProperties": false,
|
|
191063
|
-
"type": "object",
|
|
191064
|
-
"required": [
|
|
191065
|
-
"type"
|
|
191066
|
-
],
|
|
191067
|
-
"properties": {
|
|
191068
|
-
"type": {
|
|
191069
|
-
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
191070
|
-
"type": "string",
|
|
191071
|
-
"enum": [
|
|
191072
|
-
"relaunch"
|
|
191073
|
-
]
|
|
191074
191137
|
},
|
|
191075
|
-
|
|
191076
|
-
"
|
|
191077
|
-
"
|
|
191078
|
-
|
|
191079
|
-
|
|
191080
|
-
|
|
191081
|
-
|
|
191082
|
-
|
|
191083
|
-
|
|
191084
|
-
"required": [
|
|
191085
|
-
"type"
|
|
191086
|
-
],
|
|
191087
|
-
"properties": {
|
|
191088
|
-
"type": {
|
|
191089
|
-
"description": "Send a notification but do not mutate anything on Meta.",
|
|
191090
|
-
"type": "string",
|
|
191091
|
-
"enum": [
|
|
191092
|
-
"notify_only"
|
|
191093
|
-
]
|
|
191094
|
-
},
|
|
191095
|
-
"params": {
|
|
191096
|
-
"$comment": "json-value",
|
|
191097
|
-
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
191098
|
-
}
|
|
191099
|
-
}
|
|
191100
|
-
},
|
|
191101
|
-
{
|
|
191102
|
-
"additionalProperties": false,
|
|
191103
|
-
"type": "object",
|
|
191104
|
-
"required": [
|
|
191105
|
-
"type",
|
|
191106
|
-
"platform",
|
|
191107
|
-
"entity_level"
|
|
191108
|
-
],
|
|
191109
|
-
"properties": {
|
|
191110
|
-
"type": {
|
|
191111
|
-
"type": "string",
|
|
191112
|
-
"enum": [
|
|
191113
|
-
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
191114
|
-
]
|
|
191115
|
-
},
|
|
191116
|
-
"platform": {
|
|
191117
|
-
"anyOf": [
|
|
191118
|
-
{
|
|
191138
|
+
{
|
|
191139
|
+
"additionalProperties": false,
|
|
191140
|
+
"type": "object",
|
|
191141
|
+
"required": [
|
|
191142
|
+
"type"
|
|
191143
|
+
],
|
|
191144
|
+
"properties": {
|
|
191145
|
+
"type": {
|
|
191146
|
+
"description": "Increase campaign/adset budget by `params.percentage` percent.",
|
|
191119
191147
|
"type": "string",
|
|
191120
191148
|
"enum": [
|
|
191121
|
-
"
|
|
191149
|
+
"increase_budget_pct"
|
|
191122
191150
|
]
|
|
191123
191151
|
},
|
|
191124
|
-
{
|
|
191152
|
+
"params": {
|
|
191153
|
+
"additionalProperties": false,
|
|
191154
|
+
"type": "object",
|
|
191155
|
+
"properties": {
|
|
191156
|
+
"percentage": {
|
|
191157
|
+
"description": "Percent increase in [1, 1000] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit. The ceiling is deliberately far above 100: doubling or tripling a budget is ordinary media buying, and the old 100 cap (borrowed from the decrease action, where >100% is meaningless) made the rules list unserializable for anyone who had scaled a budget by more.",
|
|
191158
|
+
"minimum": 1,
|
|
191159
|
+
"maximum": 1000,
|
|
191160
|
+
"type": "number"
|
|
191161
|
+
},
|
|
191162
|
+
"pct": {
|
|
191163
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
191164
|
+
"minimum": 1,
|
|
191165
|
+
"maximum": 1000,
|
|
191166
|
+
"type": "number"
|
|
191167
|
+
}
|
|
191168
|
+
}
|
|
191169
|
+
}
|
|
191170
|
+
}
|
|
191171
|
+
},
|
|
191172
|
+
{
|
|
191173
|
+
"additionalProperties": false,
|
|
191174
|
+
"type": "object",
|
|
191175
|
+
"required": [
|
|
191176
|
+
"type"
|
|
191177
|
+
],
|
|
191178
|
+
"properties": {
|
|
191179
|
+
"type": {
|
|
191180
|
+
"description": "Decrease campaign/adset budget by `params.percentage` percent.",
|
|
191125
191181
|
"type": "string",
|
|
191126
191182
|
"enum": [
|
|
191127
|
-
"
|
|
191183
|
+
"decrease_budget_pct"
|
|
191128
191184
|
]
|
|
191129
191185
|
},
|
|
191130
|
-
{
|
|
191186
|
+
"params": {
|
|
191187
|
+
"additionalProperties": false,
|
|
191188
|
+
"type": "object",
|
|
191189
|
+
"properties": {
|
|
191190
|
+
"percentage": {
|
|
191191
|
+
"description": "Percent change in [1, 100] (defaults to 20 if omitted at runtime). 0 is rejected because a 0% change is a no-op and the worker clamps it to 1 anyway — the schema makes that contract explicit.",
|
|
191192
|
+
"minimum": 1,
|
|
191193
|
+
"maximum": 100,
|
|
191194
|
+
"type": "number"
|
|
191195
|
+
},
|
|
191196
|
+
"pct": {
|
|
191197
|
+
"description": "Legacy template alias for `percentage`; accepted for seeded rule templates.",
|
|
191198
|
+
"minimum": 1,
|
|
191199
|
+
"maximum": 100,
|
|
191200
|
+
"type": "number"
|
|
191201
|
+
}
|
|
191202
|
+
}
|
|
191203
|
+
}
|
|
191204
|
+
}
|
|
191205
|
+
},
|
|
191206
|
+
{
|
|
191207
|
+
"additionalProperties": false,
|
|
191208
|
+
"type": "object",
|
|
191209
|
+
"required": [
|
|
191210
|
+
"type"
|
|
191211
|
+
],
|
|
191212
|
+
"properties": {
|
|
191213
|
+
"type": {
|
|
191214
|
+
"description": "Relaunch the ad (duplicate + delete original). Only valid at ad level.",
|
|
191131
191215
|
"type": "string",
|
|
191132
191216
|
"enum": [
|
|
191133
|
-
"
|
|
191217
|
+
"relaunch"
|
|
191134
191218
|
]
|
|
191135
191219
|
},
|
|
191136
|
-
{
|
|
191220
|
+
"params": {
|
|
191221
|
+
"$comment": "json-value",
|
|
191222
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
191223
|
+
}
|
|
191224
|
+
}
|
|
191225
|
+
},
|
|
191226
|
+
{
|
|
191227
|
+
"additionalProperties": false,
|
|
191228
|
+
"type": "object",
|
|
191229
|
+
"required": [
|
|
191230
|
+
"type"
|
|
191231
|
+
],
|
|
191232
|
+
"properties": {
|
|
191233
|
+
"type": {
|
|
191234
|
+
"description": "Send a notification but do not mutate anything on Meta.",
|
|
191137
191235
|
"type": "string",
|
|
191138
191236
|
"enum": [
|
|
191139
|
-
"
|
|
191237
|
+
"notify_only"
|
|
191140
191238
|
]
|
|
191141
191239
|
},
|
|
191142
|
-
{
|
|
191143
|
-
"
|
|
191144
|
-
"
|
|
191145
|
-
"LINKEDIN"
|
|
191146
|
-
]
|
|
191240
|
+
"params": {
|
|
191241
|
+
"$comment": "json-value",
|
|
191242
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
191147
191243
|
}
|
|
191148
|
-
|
|
191244
|
+
}
|
|
191149
191245
|
},
|
|
191150
|
-
|
|
191151
|
-
"
|
|
191152
|
-
"
|
|
191153
|
-
|
|
191154
|
-
|
|
191155
|
-
|
|
191156
|
-
|
|
191157
|
-
|
|
191158
|
-
|
|
191159
|
-
|
|
191160
|
-
"type": "object",
|
|
191161
|
-
"required": [
|
|
191162
|
-
"type",
|
|
191163
|
-
"platform",
|
|
191164
|
-
"entity_level",
|
|
191165
|
-
"pct"
|
|
191166
|
-
],
|
|
191167
|
-
"properties": {
|
|
191168
|
-
"type": {
|
|
191169
|
-
"anyOf": [
|
|
191170
|
-
{
|
|
191246
|
+
{
|
|
191247
|
+
"additionalProperties": false,
|
|
191248
|
+
"type": "object",
|
|
191249
|
+
"required": [
|
|
191250
|
+
"type",
|
|
191251
|
+
"platform",
|
|
191252
|
+
"entity_level"
|
|
191253
|
+
],
|
|
191254
|
+
"properties": {
|
|
191255
|
+
"type": {
|
|
191171
191256
|
"type": "string",
|
|
191172
191257
|
"enum": [
|
|
191173
|
-
"
|
|
191258
|
+
"PAUSE_TOP_SPEND_CAMPAIGN"
|
|
191174
191259
|
]
|
|
191175
191260
|
},
|
|
191176
|
-
{
|
|
191261
|
+
"platform": {
|
|
191262
|
+
"anyOf": [
|
|
191263
|
+
{
|
|
191264
|
+
"type": "string",
|
|
191265
|
+
"enum": [
|
|
191266
|
+
"META"
|
|
191267
|
+
]
|
|
191268
|
+
},
|
|
191269
|
+
{
|
|
191270
|
+
"type": "string",
|
|
191271
|
+
"enum": [
|
|
191272
|
+
"GOOGLE"
|
|
191273
|
+
]
|
|
191274
|
+
},
|
|
191275
|
+
{
|
|
191276
|
+
"type": "string",
|
|
191277
|
+
"enum": [
|
|
191278
|
+
"TIKTOK"
|
|
191279
|
+
]
|
|
191280
|
+
},
|
|
191281
|
+
{
|
|
191282
|
+
"type": "string",
|
|
191283
|
+
"enum": [
|
|
191284
|
+
"TABOOLA"
|
|
191285
|
+
]
|
|
191286
|
+
},
|
|
191287
|
+
{
|
|
191288
|
+
"type": "string",
|
|
191289
|
+
"enum": [
|
|
191290
|
+
"LINKEDIN"
|
|
191291
|
+
]
|
|
191292
|
+
}
|
|
191293
|
+
]
|
|
191294
|
+
},
|
|
191295
|
+
"entity_level": {
|
|
191177
191296
|
"type": "string",
|
|
191178
191297
|
"enum": [
|
|
191179
|
-
"
|
|
191298
|
+
"campaign"
|
|
191180
191299
|
]
|
|
191181
191300
|
}
|
|
191182
|
-
|
|
191301
|
+
}
|
|
191183
191302
|
},
|
|
191184
|
-
|
|
191185
|
-
"
|
|
191186
|
-
|
|
191187
|
-
|
|
191188
|
-
|
|
191189
|
-
|
|
191303
|
+
{
|
|
191304
|
+
"additionalProperties": false,
|
|
191305
|
+
"type": "object",
|
|
191306
|
+
"required": [
|
|
191307
|
+
"type",
|
|
191308
|
+
"platform",
|
|
191309
|
+
"entity_level",
|
|
191310
|
+
"pct"
|
|
191311
|
+
],
|
|
191312
|
+
"properties": {
|
|
191313
|
+
"type": {
|
|
191314
|
+
"anyOf": [
|
|
191315
|
+
{
|
|
191316
|
+
"type": "string",
|
|
191317
|
+
"enum": [
|
|
191318
|
+
"INCREASE_BUDGET_PCT"
|
|
191319
|
+
]
|
|
191320
|
+
},
|
|
191321
|
+
{
|
|
191322
|
+
"type": "string",
|
|
191323
|
+
"enum": [
|
|
191324
|
+
"DECREASE_BUDGET_PCT"
|
|
191325
|
+
]
|
|
191326
|
+
}
|
|
191190
191327
|
]
|
|
191191
191328
|
},
|
|
191192
|
-
{
|
|
191193
|
-
"
|
|
191194
|
-
|
|
191195
|
-
|
|
191329
|
+
"platform": {
|
|
191330
|
+
"anyOf": [
|
|
191331
|
+
{
|
|
191332
|
+
"type": "string",
|
|
191333
|
+
"enum": [
|
|
191334
|
+
"META"
|
|
191335
|
+
]
|
|
191336
|
+
},
|
|
191337
|
+
{
|
|
191338
|
+
"type": "string",
|
|
191339
|
+
"enum": [
|
|
191340
|
+
"GOOGLE"
|
|
191341
|
+
]
|
|
191342
|
+
},
|
|
191343
|
+
{
|
|
191344
|
+
"type": "string",
|
|
191345
|
+
"enum": [
|
|
191346
|
+
"TIKTOK"
|
|
191347
|
+
]
|
|
191348
|
+
},
|
|
191349
|
+
{
|
|
191350
|
+
"type": "string",
|
|
191351
|
+
"enum": [
|
|
191352
|
+
"TABOOLA"
|
|
191353
|
+
]
|
|
191354
|
+
},
|
|
191355
|
+
{
|
|
191356
|
+
"type": "string",
|
|
191357
|
+
"enum": [
|
|
191358
|
+
"LINKEDIN"
|
|
191359
|
+
]
|
|
191360
|
+
}
|
|
191196
191361
|
]
|
|
191197
191362
|
},
|
|
191198
|
-
{
|
|
191363
|
+
"entity_level": {
|
|
191199
191364
|
"type": "string",
|
|
191200
191365
|
"enum": [
|
|
191201
|
-
"
|
|
191366
|
+
"campaign"
|
|
191202
191367
|
]
|
|
191203
191368
|
},
|
|
191204
|
-
{
|
|
191369
|
+
"pct": {
|
|
191370
|
+
"minimum": 1,
|
|
191371
|
+
"maximum": 100,
|
|
191372
|
+
"type": "number"
|
|
191373
|
+
}
|
|
191374
|
+
}
|
|
191375
|
+
},
|
|
191376
|
+
{
|
|
191377
|
+
"additionalProperties": false,
|
|
191378
|
+
"type": "object",
|
|
191379
|
+
"required": [
|
|
191380
|
+
"type",
|
|
191381
|
+
"channel",
|
|
191382
|
+
"message_template"
|
|
191383
|
+
],
|
|
191384
|
+
"properties": {
|
|
191385
|
+
"type": {
|
|
191205
191386
|
"type": "string",
|
|
191206
191387
|
"enum": [
|
|
191207
|
-
"
|
|
191388
|
+
"NOTIFY_CHANNEL"
|
|
191208
191389
|
]
|
|
191209
191390
|
},
|
|
191210
|
-
{
|
|
191211
|
-
"
|
|
191212
|
-
|
|
191213
|
-
|
|
191391
|
+
"channel": {
|
|
191392
|
+
"anyOf": [
|
|
191393
|
+
{
|
|
191394
|
+
"type": "string",
|
|
191395
|
+
"enum": [
|
|
191396
|
+
"in_app"
|
|
191397
|
+
]
|
|
191398
|
+
},
|
|
191399
|
+
{
|
|
191400
|
+
"type": "string",
|
|
191401
|
+
"enum": [
|
|
191402
|
+
"email"
|
|
191403
|
+
]
|
|
191404
|
+
},
|
|
191405
|
+
{
|
|
191406
|
+
"type": "string",
|
|
191407
|
+
"enum": [
|
|
191408
|
+
"telegram"
|
|
191409
|
+
]
|
|
191410
|
+
}
|
|
191214
191411
|
]
|
|
191412
|
+
},
|
|
191413
|
+
"message_template": {
|
|
191414
|
+
"minLength": 1,
|
|
191415
|
+
"maxLength": 500,
|
|
191416
|
+
"type": "string"
|
|
191215
191417
|
}
|
|
191216
|
-
|
|
191217
|
-
},
|
|
191218
|
-
"entity_level": {
|
|
191219
|
-
"type": "string",
|
|
191220
|
-
"enum": [
|
|
191221
|
-
"campaign"
|
|
191222
|
-
]
|
|
191223
|
-
},
|
|
191224
|
-
"pct": {
|
|
191225
|
-
"minimum": 1,
|
|
191226
|
-
"maximum": 100,
|
|
191227
|
-
"type": "number"
|
|
191418
|
+
}
|
|
191228
191419
|
}
|
|
191229
|
-
|
|
191420
|
+
]
|
|
191230
191421
|
},
|
|
191231
191422
|
{
|
|
191232
|
-
"additionalProperties":
|
|
191423
|
+
"additionalProperties": true,
|
|
191424
|
+
"description": "Rule action stored before the current schema; surfaced as-is so the list stays readable.",
|
|
191233
191425
|
"type": "object",
|
|
191234
191426
|
"required": [
|
|
191235
|
-
"type"
|
|
191236
|
-
"channel",
|
|
191237
|
-
"message_template"
|
|
191427
|
+
"type"
|
|
191238
191428
|
],
|
|
191239
191429
|
"properties": {
|
|
191240
191430
|
"type": {
|
|
191241
|
-
"
|
|
191242
|
-
"enum": [
|
|
191243
|
-
"NOTIFY_CHANNEL"
|
|
191244
|
-
]
|
|
191245
|
-
},
|
|
191246
|
-
"channel": {
|
|
191247
|
-
"anyOf": [
|
|
191248
|
-
{
|
|
191249
|
-
"type": "string",
|
|
191250
|
-
"enum": [
|
|
191251
|
-
"in_app"
|
|
191252
|
-
]
|
|
191253
|
-
},
|
|
191254
|
-
{
|
|
191255
|
-
"type": "string",
|
|
191256
|
-
"enum": [
|
|
191257
|
-
"email"
|
|
191258
|
-
]
|
|
191259
|
-
},
|
|
191260
|
-
{
|
|
191261
|
-
"type": "string",
|
|
191262
|
-
"enum": [
|
|
191263
|
-
"telegram"
|
|
191264
|
-
]
|
|
191265
|
-
}
|
|
191266
|
-
]
|
|
191267
|
-
},
|
|
191268
|
-
"message_template": {
|
|
191269
|
-
"minLength": 1,
|
|
191270
|
-
"maxLength": 500,
|
|
191431
|
+
"description": "Action discriminator as stored, including legacy spellings.",
|
|
191271
191432
|
"type": "string"
|
|
191433
|
+
},
|
|
191434
|
+
"params": {
|
|
191435
|
+
"$comment": "json-value",
|
|
191436
|
+
"description": "Arbitrary JSON value with nested arrays and objects."
|
|
191272
191437
|
}
|
|
191273
191438
|
}
|
|
191274
191439
|
}
|