New to Kestra?
Use blueprints to kickstart your first workflows.
Monitor asset sentiment drift via the Adanos Market Sentiment API and alert Slack when sentiment crosses bearish or bullish thresholds.
Public sentiment around a stock or crypto asset can swing from normal to extreme between two checks, and nothing surfaces that drift until a trader or compliance analyst happens to look. This blueprint pulls Adanos's sentiment summary for a tracked asset on a schedule, classifies the current sentiment_score against bearish and bullish thresholds, and pages Slack the moment sentiment swings to an extreme or the API itself cannot be reached.
fetch_asset_sentiment (io.kestra.plugin.adanos.GetAssetSentiment) calls the Adanos Market Sentiment API for asset_symbol from sentiment_source, with allowFailure: true so a connection or authentication failure still lets the flow continue instead of aborting.classify_sentiment_drift (io.kestra.plugin.core.debug.Return) checks whether outputs.fetch_asset_sentiment.body is defined; if not, UNREACHABLE. Otherwise it compares body.sentiment_score directly against bearish_sentiment_threshold and bullish_sentiment_threshold and returns BEARISH_RISK, BULLISH_SPIKE, or NORMAL.route_by_drift (io.kestra.plugin.core.flow.Switch) branches on that string: NORMAL logs a quiet confirmation, BEARISH_RISK and BULLISH_SPIKE each page Slack with the score, buzz, and mention count, UNREACHABLE pages Slack separately, and defaults logs the raw outcome.log_audit_status records a status line on every run regardless of branch, so the execution history is a continuous sentiment trend.errors block pages Slack separately if the flow itself fails outright.adanos_sentiment_drift_schedule trigger polls every 4 hours with explicit input overrides, shipped disabled: true until you add a real API key.status output (NORMAL / BEARISH_RISK / BULLISH_SPIKE / UNREACHABLE) you can chart or gate other flows on.A dashboard shows sentiment when someone looks at it; this flow watches it continuously. Every check is recorded in the execution history, the result becomes a typed output other flows can depend on, and the Switch branch is one edit away from real remediation (pausing an automated strategy, opening a ticket, notifying a trading desk) instead of a one-off script.
GetAssetSentiment, are available on the free plan; see adanos.org/pricing for current request quotas.ADANOS_API_KEY.ADANOS_API_KEY: Adanos API key, sent only in the X-API-Key header.SLACK_WEBHOOK_URL: Slack incoming webhook used for the drift alerts, the unreachable alert, and the flow-failure alert.SECRET_ADANOS_API_KEY and SECRET_SLACK_WEBHOOK_URL as base64, for example echo -n "<your-api-key>" | base64 and echo -n "<your-webhook-url>" | base64.ADANOS_API_KEY and SLACK_WEBHOOK_URL secrets.asset_symbol, asset_type, and sentiment_source to the asset you want to track.status reads NORMAL, BEARISH_RISK, or BULLISH_SPIKE depending on live sentiment.adanos_sentiment_drift_schedule.Loop task to monitor a whole watchlist from one flow.sentiment_score in a KV store or time-series table and alert only on a sharp change between runs instead of an absolute threshold.ListTrendingAssets or CompareAssets as a companion task to contextualize one asset's score against the broader market.