Setup in six moves
Online backlink checker tool as a custom GPT Action, step by step
Custom GPTs, introduced by OpenAI in November 2023, can call an HTTP API through an Action. Here is the smallest working schema for backlink data, and the order to test it in.
SEO AI Pal research team ·
From empty GPT to a first real answer
- 1
Sign in and copy a key
Google sign-in only, no card. The account opens with $100 of credit, which is 1,000,000 credits. Copy the
sk_live_key from the dashboard at /account.php. - 2
Open the Actions panel of your GPT
Create or edit a custom GPT, scroll to Actions and choose to add one. You will see a box for an OpenAPI schema and a place to set authentication.
- 3
Paste the schema below
It exposes four read-only actions on purpose. Fewer doors means fewer surprise charges.
- 4
Set authentication to an API key
Choose a bearer-style key and paste yours. The server also accepts
Authorization: Bearer sk_..., so the header route works and keeps the key out of chat transcripts. - 5
Test on a free action first
Ask for an overview of a domain you know.
overviewis free and needs no credits, so you can break things at no cost. - 6
Add the instructions
A schema alone does not stop guessing. Paste the wording from the system prompt runbook into the GPT's instruction box.
The schema, trimmed to what an assistant needs
Every parameter below exists in the product. per is capped at 100 here so that one reply never drags 5,000 rows into the conversation.
openapi: 3.1.0
info:
title: Backlink lookups
version: "1.0"
servers:
- url: https://seoaipal.com
paths:
/api.php:
get:
operationId: linkLookup
summary: One backlink action for one domain
parameters:
- name: action
in: query
required: true
schema:
type: string
enum: [overview, refdomains, anchors, toppages]
- name: q
in: query
required: true
schema: {type: string}
description: Bare domain, for example example.com
- name: per
in: query
schema: {type: integer, minimum: 10, maximum: 100}
responses:
"200":
description: JSON with an ok flagWhich actions to expose, and what each one costs
| Action | Credits | Why an assistant wants it |
|---|---|---|
| overview | 0 (free) | First look at a domain, rating included. |
| refdomains | 2 | Who links to the domain, one row per referring site. |
| anchors | 2 | The link text pointing at it. |
| toppages | 2 | Which pages attract the links. |
| bulk_dr | 1 | Up to 2,000 domains per call. Leave out until you need it. |
Why we cap rows and drop the dangerous ones
A call bills once whatever the row count, up to 1,000 rows. That is friendly to your wallet. It is hostile to a chat window. Fifty thousand characters of JSON push the instructions out of the model's attention, and it starts to improvise.
So cap per. A hundred referring domains is enough for a conversation, and you can ask for page two on purpose. If you want the full export, call the API from a script and hand the assistant a summary.
Mind the audience. This online backlink checker tool is also free to open in a browser, so a teammate who dislikes chat can still look up the same domain. Keep the GPT private or link-only while you test, because anyone who can chat with it can spend the balance behind its key. The guardrails are in the budget page.
The index refreshes roughly monthly. Add one line to your instructions telling the GPT to say so when a link you expect is missing, instead of calling the site broken.
Setup questions we hear
- Does the GPT need my Google login too?
- No. Your Google sign-in only creates the account and the key. The GPT never sees it. It sends the
sk_key and nothing else. - Can I use the same schema in Claude or Gemini?
- The endpoint is plain GET with JSON back, so any assistant that can call an HTTP tool can use it. Each product describes tools in its own format, so you rewrite the wrapper, not the API.
- What happens when the balance reaches zero?
- The server answers HTTP 402. Tell the GPT in its instructions to report that status in plain words and stop retrying. Free actions keep working.