ssh.autos

Catalog / Social, content & reviews

SOCIAL, CONTENT & REVIEWS

YouTube Outlier Finder: Videos That Beat Their Channel

Find YouTube videos that beat their channel's typical views.

PER CALL · X402 / MPP From $0.02 per call 1 endpoint at api.ssh.autos. Pay in USDC, no account. See the endpoint
APIFY STORE Public actor Run it with your Apify account: bulk runs, schedules and exports. Open on Apify

About this data

Find YouTube videos that beat their channel's typical views. Give channels or a search term; each recent upload gets an outlier score (views ÷ the channel's median views), views per day, publish date, duration and a rank. Filter by days back and minimum score.

From the actor’s Apify Store listing. The per-call endpoint may return a bounded subset; its own description is below.

Buy per call over x402

One endpoint at api.ssh.autos. Each call is one JSON POST, paid in USDC with no account or API key, and answered in the same HTTP response.

POST /v1/youtube/business-outliers

Compare videos from the latest upload page of Google, Microsoft or Apify against a five-video typical-view baseline.

PRICE$0.02 per call, in USDC
RESULTUp to 3 per call
PAYMENTx402 or MPP · no account

Returns titles, video links, views, publication dates and precision, outlier scores, views per day, duration and thumbnails.

Up to three videos; this is a page snapshot, not exhaustive channel history.

Input

Send a JSON body to POST https://api.ssh.autos/v1/youtube/business-outliers.

FieldTypeRequiredNotes
channelstringrequiredone of @Google, @Microsoft, @Apify
lookbackDaysintegeroptional1–30; default 30
maxResultsintegeroptional1–3; default 3
minOutlierScorenumberoptional0–1000; default 0

Returned fields

The answer is JSON: records, a list of up to 3, and summary, the run status and counts. Each record has these 38 fields; a field the source does not publish comes back null.

38 fields per record
FieldTypeNotes
rankintegerPosition in this run, 1 = highest outlier score
videoIdstring11-character YouTube video ID
urlstringWatch link (source URL); a /shorts/ link on Shorts rows
channelIdstringChannel ID (UC…)
channelNamestringChannel name
channelHandlestringChannel @handle
channelUrlstringChannel link
publishedAtstringExact publish time (ISO 8601, UTC) when YouTube lists it; otherwise null (always null on Shorts rows)
publishedDatestringPublish date, YYYY-MM-DD (UTC)
publishedDatePrecisionstringexact = publish time known to the second; day = publish day known; estimated = worked out from the upload age YouTube shows (e.g. 2 weeks ago)
one of exact, day, estimated
publishedTextstringUpload age as YouTube shows it, e.g. 6 days ago
ageDaysnumberDays since publishing at scrape time; on Shorts rows whole days from the run's start date (UTC)
viewCountintegerViews
channelMedianViewsnumberMedian views of the channel's latest long-form uploads (the baseline); on Shorts rows the median of the Shorts baseline labels, without the row's own Short; can end in .5
outlierScorenumberviewCount ÷ channelMedianViews (a median of 0 counts as 1); informational on Shorts rows, which are gated on scoreLowerBound
viewsPerDaynumberviewCount ÷ ageDays (age counted as at least 1 day)
durationintegerLength in seconds
durationTextstringLength as m:ss or h:mm:ss
baselineVideosintegerHow many uploads the channel median was taken over (Shorts rows: after leaving the row's own Short out)
thumbnailUrlstringThumbnail image link
sourcestringWhich input kind found the video
one of channel, search
inputstringThe channel or search term that produced the row
searchQuerystringThe search term, on search rows
scrapedAtstringWhen the row was collected (ISO 8601, UTC)
contractVersionstringShorts rows: output contract version
one of shorts-mode/1
contractRevisionintegerShorts rows: output contract revision
contentTypestringShorts rows: shorts (long-form rows carry no contentType)
one of shorts
isShortbooleanShorts rows: always true
shortsIdentitystringShorts rows: how the video is known to be a Short (listed on the channel's own Shorts tab)
one of shortsTab
tabPositionintegerShorts rows: position on the channel's Shorts tab, 0 = newest
viewCountPrecisionstringShorts rows: exact = the full view count from the video's page
one of exact
viewLabelstringShorts rows: the rounded-down view label shown on the Shorts tab, e.g. 1.4K views
shortsMedianViewsnumberShorts rows: same as channelMedianViews
medianViewsUpperBoundintegerShorts rows: the baseline median taken over each label's upper bound (1.4K counts as 1,500), without the row's own Short
scoreLowerBoundnumberShorts rows: viewCount ÷ medianViewsUpperBound, truncated to 2 decimals; rows are returned only when it reaches max(minOutlierScore, 10)
leaveOneOutbooleanShorts rows: true when the row's own Short was in the baseline and was left out of it
baselineNewestAgeDaysintegerShorts rows: age in days of the newest Short in the baseline
baselineOldestAgeDaysintegerShorts rows: age in days of the oldest Short in the baseline

Example call

TERMINAL · $0.02 PER RUN
npx agentcash@latest fetch https://api.ssh.autos/v1/youtube/business-outliers -m POST -b '{"channel": "@Google", "maxResults": 3}'

The example values come from the API spec or the actor’s own sample input. Running it is a paid call.

What is and isn’t charged

Free

  • Invalid input (422), busy (503), source failure (502), timeout (504) and calls whose client hung up are never charged.
  • Invalid input and source failures are not charged.

Prefer a subscription? Run it on Apify

This data source is a public actor on the Apify Store: YouTube Outlier Finder: Videos That Beat Their Channel. Run it with your Apify account and plan for larger, scheduled or exported runs; it may offer more input options than the per-call endpoint.

Open on Apify

How x402 payment works

  1. Your client sends the request. The API answers 402 Payment Required with the price and where to pay.
  2. The client pays from its own wallet: USDC on Base or Solana over x402, or over MPP on Tempo. No account, sign-up or API key.
  3. The client retries with the payment attached and gets the JSON answer in the same call. You are only charged for answers.

The AgentCash CLI in the example does all three steps for you and pays from your AgentCash wallet. Any x402 or MPP client works the same way.

Machine-readable: openapi.json · llms.txt

Some links to Apify are affiliate links. We may earn a commission if you sign up and become a paying customer.