Install
openclaw skills install reddit-ads-cliReddit Ads data analysis and reporting via reddit-ads-cli. Use when the user wants to check Reddit ad performance, list campaigns/ad groups/ads, explore subreddit and interest targeting, track conversion pixels, or generate reports. Triggers: "Reddit Ads", "Reddit ad performance", "Reddit campaign stats", "Reddit ad spend", "Reddit report", "Reddit pixel", "Reddit audience", "Reddit subreddit targeting", "Reddit interest targeting", "Reddit creatives", "Reddit ad account", "Reddit ad groups".
openclaw skills install reddit-ads-cliYou have access to reddit-ads-cli, a read-only CLI for the Reddit Ads API (v3). Use it to query ad accounts, list campaigns and ads, generate performance reports, inspect creatives, manage custom audiences, track conversion pixels, and explore targeting options (subreddits, interests, geos).
# Check if the CLI is available
reddit-ads-cli --help
# List accessible ad accounts
reddit-ads-cli accounts
# List campaigns for an account
reddit-ads-cli campaigns t2_abc123
If the CLI is not installed, install it:
npm install -g reddit-ads-cli
The CLI requires a Reddit OAuth access token. Credentials are resolved in this order:
--credentials <path> flag (per-command)REDDIT_ADS_ACCESS_TOKEN~/.config/reddit-ads-cli/credentials.jsonThe credentials file format:
{
"access_token": "YOUR_ACCESS_TOKEN",
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET",
"username": "your_reddit_username"
}
Only access_token is required. The username field is used to build the User-Agent string (cli:reddit-ads-cli:v<version> (by /u/<username>)). Reddit rate-limits requests without a proper User-Agent.
When using environment variables:
REDDIT_ADS_ACCESS_TOKEN -- requiredREDDIT_ADS_CLIENT_ID -- optionalREDDIT_ADS_CLIENT_SECRET -- optionalREDDIT_ADS_USERNAME -- optional, for User-AgentBefore running any command, verify credentials are configured by running reddit-ads-cli accounts. If it fails with a credentials error, ask the user to set up authentication.
Ad Account (t2_XXXXX)
+-- Campaign
| +-- Ad Group
| +-- Ad
+-- Creative
+-- Custom Audience
+-- Pixel
+-- Pixel Events
Ad account IDs use the t2_ prefix (e.g., t2_abc123).
All commands output pretty-printed JSON by default. Use --format compact for single-line JSON (useful for piping).
# List all ad accounts accessible by the authenticated user
reddit-ads-cli accounts
# Get details of a specific ad account
reddit-ads-cli account t2_abc123
# List campaigns (optionally filter by status)
reddit-ads-cli campaigns t2_abc123
reddit-ads-cli campaigns t2_abc123 --status ACTIVE
# List ad groups (optionally filter by campaign or status)
reddit-ads-cli adgroups t2_abc123
reddit-ads-cli adgroups t2_abc123 --campaign-id campaign_abc
reddit-ads-cli adgroups t2_abc123 --status PAUSED
# List ads (optionally filter by ad group, campaign, or status)
reddit-ads-cli ads t2_abc123
reddit-ads-cli ads t2_abc123 --ad-group-id adgroup_abc
reddit-ads-cli ads t2_abc123 --campaign-id campaign_abc
reddit-ads-cli ads t2_abc123 --status ACTIVE
--status <status> -- filter by status (ACTIVE, PAUSED, etc.)--campaign-id <id> -- filter by campaign ID--status <status> -- filter by status (ACTIVE, PAUSED, etc.)--ad-group-id <id> -- filter by ad group ID--campaign-id <id> -- filter by campaign ID--status <status> -- filter by status (ACTIVE, PAUSED, etc.)The report command generates performance reports via a POST request. Both --start-date and --end-date are required.
# Campaign-level report (default level)
reddit-ads-cli report t2_abc123 \
--start-date 2026-03-01 \
--end-date 2026-03-15 \
--metrics impressions,clicks,spend,ecpm,ctr
# Ad group level with timezone
reddit-ads-cli report t2_abc123 \
--start-date 2026-03-01 \
--end-date 2026-03-15 \
--level AD_GROUP \
--metrics impressions,clicks,spend \
--campaign-id campaign_abc \
--timezone America/New_York
# Account-level report
reddit-ads-cli report t2_abc123 \
--start-date 2026-03-01 \
--end-date 2026-03-15 \
--level ACCOUNT
# Ad-level report filtered to a specific ad group
reddit-ads-cli report t2_abc123 \
--start-date 2026-03-01 \
--end-date 2026-03-15 \
--level AD \
--ad-group-id adgroup_abc
--start-date <date> -- start date, YYYY-MM-DD (required)--end-date <date> -- end date, YYYY-MM-DD (required)--level <level> -- report level: ACCOUNT, CAMPAIGN, AD_GROUP, AD (default: CAMPAIGN)--metrics <metrics> -- comma-separated metrics (default: impressions,clicks,spend). Other metrics shown in examples: ecpm, ctr. The CLI passes metric names directly to the Reddit Ads API without validation. Refer to the Reddit Ads API docs for all available metrics.--campaign-id <id> -- filter by campaign ID--ad-group-id <id> -- filter by ad group ID--timezone <tz> -- timezone (e.g., America/New_York)# List ad creatives for an account (supports pagination)
reddit-ads-cli creatives t2_abc123
reddit-ads-cli creatives t2_abc123 --limit 50 --offset 10
# Get a specific creative
reddit-ads-cli creative t2_abc123 creative_xyz
--limit <n> -- results per page (default: 25)--offset <n> -- start index (default: 0)# List custom audiences (supports pagination)
reddit-ads-cli custom-audiences t2_abc123
reddit-ads-cli custom-audiences t2_abc123 --limit 50 --offset 10
--limit <n> -- results per page (default: 25)--offset <n> -- start index (default: 0)# List conversion pixels for an account
reddit-ads-cli pixels t2_abc123
# List events for a specific pixel
reddit-ads-cli pixel-events t2_abc123 pixel_xyz
# Search subreddits available for targeting (--query is required)
reddit-ads-cli subreddits --query gaming
reddit-ads-cli subreddits --query technology --limit 50
# List interest targeting categories
reddit-ads-cli interests
# List geographic targeting options (optionally search)
reddit-ads-cli geos
reddit-ads-cli geos --query "United States"
--query <q> -- search query (required)--limit <n> -- results per page (default: 25)--query <q> -- search query (optional)Commands that support pagination via --limit and --offset: creatives, custom-audiences, subreddits.
Commands without pagination options: accounts, account, campaigns, adgroups, ads, pixels, pixel-events, interests, geos.
reddit-ads-cli accounts to find accessible accountsreddit-ads-cli campaigns <account-id> to list campaignsreddit-ads-cli report <account-id> --start-date ... --end-date ... for a performance snapshot--level ACCOUNT) to see overall performance--level CAMPAIGN to identify top/bottom campaigns--level AD_GROUP or --level AD for underperforming campaigns--campaign-id or --ad-group-id to focus on specific entitiescreatives to review ad contentreport with --level AD to get ad-level metricsads to find the ad detailscreatives and creative to inspect the actual creative contentsubreddits --query <topic> to discover targetable subredditsinterests to see available interest categoriesgeos to explore geographic targeting optionspixels to list active conversion pixelspixel-events with a pixel ID to check what events are being trackedreport with conversion-related metrics to see performancecustom-audiences to list existing custom audiences--limit and --offset~/.config/reddit-ads-cli/credentials.json exists and contains a valid access_tokenusername is set in credentialsreddit-ads-cli --help to see available commands