SyncKuCoinEarnSnapshot
Вызывает KuCoin Earn All Products overview API, нормализует currency rows и записывает snapshot в Timescale через SQL ingest.
Код: internal/worker/activities/sync_kucoin_earn.go
Input
Input (models.SyncKuCoinEarnInput):
keyword— search keyword; default""layer— default3order_by— default""exclude_advanced_group_apr— defaulttruelang— defaulten_US
Output
Output (models.SyncKuCoinEarnResult):
snapshot_atprojects_seenprojects_upsertedsubpools_seensubpools_upsertedquarantine_rows
Behavior
- confirmed overview source:
GET /_pxapi/pool-staking/v5/currencies-products - activity использует self-contained browser-like headers и не требует runtime cookies по умолчанию
- detail route не нужен: весь mapping берется из overview payload
- DB: SQL function
ingest_kucoin_earn_snapshot($1::jsonb)+fct_kucoin_earn_*
Failure Policy
kucoin_earn_access_denied(non-retryable)api_errorиparse_errorпишутся вfct_kucoin_earn_quarantine