Skip to content

Copy, paste, grep

Backlink verifier cheatsheet: curl lines that work

Seven lines you will reuse and a table for when a call fails. Everything below runs in a plain shell with curl and, optionally, jq.

Troubleshooting table

Read the status code first, then the ok field.
What you seeWhat it meansWhat to do
HTTP 401Key missing or misspelledSend key=sk_... or a Bearer header; copy it again from the account page
HTTP 402Credit is at zeroTop up with USDT (TRC-20) from the account page
Empty or odd reply, status 200Action name misspelled or q missingCheck both against the action table
Empty rows for a real siteNot yet in the monthly indexRetry after the next refresh, verify by hand meanwhile
Fewer rows than expectedper defaulted lowAdd per=1000; deep pages stop at 50,000 rows
Old numbersRefresh runs roughly once a monthTreat it as a trend, not a live feed

Free lines, no key

Start here. These cost nothing.

bash
B="https://quicklinky.com/api.php"
curl -s "$B?action=overview&q=example.com"
curl -s "$B?action=stats&q=example.com"
curl -s "$B?action=suggest&q=examp"

Verifying one link without lying to yourself

A backlink verifier built on an index can say yes with confidence and no only with caution. Yes means the link was seen. No means not seen yet, which is a weaker claim. That asymmetry is the whole trick of the method.

So the loop is simple. Pull the target's backlinks, grep for the source domain, and if it is absent, open the page in a browser to confirm the live HTML. Log the date, because the next monthly refresh can flip a no into a yes.

For a whole campaign, do the same pull once and grep a file of source domains. One call, not forty, and the whole thing costs two credits.

Keyed lines

Replace the key. Each line is billed once, 2 credits for the first three.

bash
K="sk_live_..."
curl -s "$B?action=backlinks&q=yoursite.com&per=1000&key=$K" > links.json
grep -c "partner-blog.com" links.json
curl -s "$B?action=anchors&q=yoursite.com&key=$K" | jq .
curl -s "$B?action=refdomains&q=yoursite.com&key=$K" | head -c 600

Daily loop for a link campaign

  1. 1

    Monday: pull

    Run backlinks for your site with per=1000 and save it as a dated file such as links-2026-11-02.json.

  2. 2

    Compare

    Run diff on this week's file and last week's. Lines that appear are new, lines that vanish are lost.

  3. 3

    Confirm by hand

    Open any lost or missing link in a browser. A real removal shows in the HTML, an index lag does not.

  4. 4

    Note the cost

    Two credits a pull is $0.0002. Log it anyway, so a runaway loop shows up early.

Habits that save credits

  • Run one free overview first to confirm the domain exists
  • Use per=1000, because a call costs the same at any row count
  • Save the JSON to a file and grep it, rather than calling again
  • Send the key in a header when you script, so it stays out of shell history
  • Log the date of every pull next to the result
  • Keep a plain-text note of the commands you ran, so next month's pull is a copy-paste

Verifier questions

How fresh is the check?
The index is rebuilt about once a month. A link placed in the last few weeks can be missing. Treat an absent link as unconfirmed and look at the live page. This delay is the main limit of any index-based check.
Is jq required?
No. grep and head are enough for most checks. jq helps when you want to sort or pull one field, and it installs from every package manager. Windows users can run the same lines inside WSL.
Can I run this from cron?
Yes. A weekly cron that saves backlinks to a dated file lets you diff the lists later. See the competitor one-liner for another pipe worth scheduling, and the cost page for what a schedule spends.