sklik rozsireni na typove metody
This commit is contained in:
@@ -60,6 +60,47 @@ GOOGLE_ADS_SCOPE = os.getenv(
|
||||
# HTTP body is a JSON array of positional arguments.
|
||||
SKLIK_BASE_URL = os.getenv("SKLIK_BASE_URL", "https://api.sklik.cz/drak/json/v5")
|
||||
|
||||
# Page size / safety cap for the typed list endpoints (campaigns, groups, ads).
|
||||
SKLIK_LIST_PAGE_LIMIT = int(os.getenv("SKLIK_LIST_PAGE_LIMIT", "100"))
|
||||
SKLIK_LIST_MAX_PAGES = int(os.getenv("SKLIK_LIST_MAX_PAGES", "200"))
|
||||
|
||||
# --- Sklik write guard rails --------------------------------------------------
|
||||
# Optional backstops for the write endpoints. All amounts are in HALERS
|
||||
# (100 = 1 Kc), the unit the Sklik API itself uses.
|
||||
#
|
||||
# All THREE ceilings default to 0 = DISABLED, i.e. the proxy does not second-
|
||||
# guess the caller's budgets out of the box. Set a non-zero value to have the
|
||||
# proxy reject anything above it - useful as a safety net against a misplaced
|
||||
# decimal point (Sklik works in halers, so "50000" meant as korunas is 500 Kc).
|
||||
# Enforcement is opt-in on purpose: the approval flow lives on the caller's side.
|
||||
SKLIK_MAX_DAY_BUDGET_HALERS = int(os.getenv("SKLIK_MAX_DAY_BUDGET_HALERS", "0"))
|
||||
SKLIK_MAX_TOTAL_BUDGET_HALERS = int(os.getenv("SKLIK_MAX_TOTAL_BUDGET_HALERS", "0"))
|
||||
# Ceiling for a group's default max CPC / CPT.
|
||||
SKLIK_MAX_CPC_HALERS = int(os.getenv("SKLIK_MAX_CPC_HALERS", "0"))
|
||||
|
||||
# How long a completed write is remembered for idempotent replay (seconds).
|
||||
# Idempotency itself is opt-in per request via the X-Idempotency-Key header.
|
||||
SKLIK_IDEMPOTENCY_TTL_SECONDS = float(
|
||||
os.getenv("SKLIK_IDEMPOTENCY_TTL_SECONDS", "86400")
|
||||
)
|
||||
|
||||
# Creation always forces status=suspend (see app.sklik_guards). UPDATE, however,
|
||||
# is full CRUD and can set status=active by default - that is how you resume a
|
||||
# paused campaign. Set this to "true" to refuse activation through the API as
|
||||
# well, so starting a campaign stays a manual action in the Sklik UI.
|
||||
SKLIK_BLOCK_ACTIVATION = os.getenv(
|
||||
"SKLIK_BLOCK_ACTIVATION", "false"
|
||||
).strip().lower() in ("1", "true", "yes")
|
||||
|
||||
# The generic /sklik/rpc passthrough reaches any method, including mutating ones
|
||||
# (campaigns.create etc.), which bypass the typed endpoints' guard rails. That
|
||||
# is the long-standing behaviour and stays ALLOWED by default. Set this to
|
||||
# "false" to restrict the passthrough to read methods and funnel every write
|
||||
# through the typed endpoints.
|
||||
SKLIK_RPC_ALLOW_MUTATIONS = os.getenv(
|
||||
"SKLIK_RPC_ALLOW_MUTATIONS", "true"
|
||||
).strip().lower() in ("1", "true", "yes")
|
||||
|
||||
# --- HTTP ---------------------------------------------------------------------
|
||||
# Upstream request timeout in seconds.
|
||||
HTTP_TIMEOUT_SECONDS = float(os.getenv("HTTP_TIMEOUT_SECONDS", "60"))
|
||||
|
||||
Reference in New Issue
Block a user