Skills datafast-analytics
Query DataFast website analytics and visitor data via the DataFast API for metrics, time series, realtime stats, breakdowns, visitor details, and goal/payment management.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/bennyqp/datafast-analytics" ~/.claude/skills/openclaw-skills-datafast-analytics && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/bennyqp/datafast-analytics" ~/.openclaw/skills/openclaw-skills-datafast-analytics && rm -rf "$T"
manifest:
skills/bennyqp/datafast-analytics/SKILL.mdsource content
DataFast Analytics Skill
Use this skill to call the DataFast API and summarize results for the user.
Quick Workflow
- Confirm the request type (overview, timeseries, realtime, breakdown, visitor, goals/payments create/delete).
- Gather required inputs:
- Date range:
andstartAt
together or neither (overview/timeseries support ranges).endAt
,timezone
,fields
,interval
,limit
, and anyoffset
parameters.filter_*
- Date range:
- Build the HTTP request with
andAuthorization: Bearer $DATAFAST_API_KEY
.Content-Type: application/json - Execute with
and parse JSON.curl - Summarize results in a table plus a short narrative (totals + key takeaways). Include pagination info if relevant.
Setup
- Get your API key from DataFast (starts with
).df_ - Store it:
mkdir -p ~/.config/datafast echo "df_your_key_here" > ~/.config/datafast/api_key
Authentication
All requests need:
DATAFAST_API_KEY=$(cat ~/.config/datafast/api_key) curl ... \ -H "Authorization: Bearer $DATAFAST_API_KEY" \ -H "Content-Type: application/json"
If the user hasn't set up the API key, ask them to follow the setup steps above.
Base URL
https://datafa.st/api/v1/
Reference Docs
Use the full API reference at
{baseDir}/references/datafast-api-docs.md for endpoint details, response fields, and examples.
Endpoint Guidance
Overview
GET /analytics/overview- Optional:
,startAt
,endAt
,timezone
.fields
Time Series
GET /analytics/timeseries- Typical params:
,fields
(hour/day/week/month),interval
,startAt
,endAt
,timezone
,limit
.offset - Accepts
query params for segmentation.filter_* - Note:
is required (e.g.,fields
).fields=visitors,sessions
Realtime
GET /analytics/realtimeGET /analytics/realtime/map
Breakdowns
GET /analytics/devicesGET /analytics/pagesGET /analytics/campaignsGET /analytics/goalsGET /analytics/referrersGET /analytics/countriesGET /analytics/regionsGET /analytics/citiesGET /analytics/browsersGET /analytics/operating-systemsGET /analytics/hostnames
Visitor Details
GET /visitors/{datafast_visitor_id}
Goals
- Create goal:
POST /goals - Delete goals:
(requires at least one filter or time range; confirm scope)DELETE /goals
Payments
- Create payment:
POST /payments - Delete payments:
(confirm scope)DELETE /payments
Destructive Actions
For
DELETE /goals or DELETE /payments:
- Always confirm exact filters and time range in plain English before executing.
- If user asks for "all time" deletion, ask for explicit confirmation.
- Echo the final URL that will be called (without the API key).
Filter Syntax
Use
filter_* params for segmentation (e.g., filter_referrer=is:X).
Important: Filter values must match the exact names from breakdown endpoints. For example, X/Twitter is stored as "X" (not "x.com" or "twitter.com"). When in doubt, query the breakdown first:
curl ... "/analytics/referrers?limit=20"
Then use the exact
referrer value in your filter.
Example Command Patterns
GET
DATAFAST_API_KEY=$(cat ~/.config/datafast/api_key) curl -sS "https://datafa.st/api/v1/analytics/overview?startAt=2024-01-01&endAt=2024-01-31&timezone=UTC" \ -H "Authorization: Bearer $DATAFAST_API_KEY" \ -H "Content-Type: application/json"
POST
DATAFAST_API_KEY=$(cat ~/.config/datafast/api_key) curl -sS "https://datafa.st/api/v1/goals" \ -H "Authorization: Bearer $DATAFAST_API_KEY" \ -H "Content-Type: application/json" \ -d '{"datafast_visitor_id":"...","name":"newsletter_signup","metadata":{"email":"..."}}'
DELETE
DATAFAST_API_KEY=$(cat ~/.config/datafast/api_key) curl -sS -X DELETE "https://datafa.st/api/v1/goals?name=signup&startAt=2023-01-01T00:00:00Z&endAt=2023-01-31T23:59:59Z" \ -H "Authorization: Bearer $DATAFAST_API_KEY"
Output Expectations
- Provide a short summary and a flat table of results.
- Include totals and conversion/revenue metrics when present.
- For time series, include the top-level totals and the first/last timestamps in the selected range.
- If pagination exists, report
,limit
, andoffset
, and ask if the user wants the next page.total