GetLinkFastGetLinkFast

Dokumentace pro vývojáře

API a server MCP GetLinkFast

Vyhledávejte weby, plňte košík a objednávejte za kredity bez otevření nástěnky: ze skriptu, ze scénáře Make nebo n8n nebo z AI agenta, jako je Claude či Cursor. API i server MCP používají stejný klíč a vracejí stejný JSON.

K čemu to slouží

  • Agentury a SEO týmy: napojte své interní nástroje a reportovací nástěnky na svůj účet. Katalog, košík, objednávky a stavy čtete v JSON.
  • AI agenti: požádejte Claude Code nebo Cursor „najdi mi 5 finančních webů s DR 40+ a objednej je“. Agent vyhledává, ukáže vám souhrn a objedná až po vašem souhlasu.
  • Make, n8n, Zapier: stačí modul HTTP a klíč.

API prodává článek hosta (guest_post), vložení odkazu (link_insertion) a balíčky SEO/GEO, pouze za kredity. Nákup kreditů a ostatní nabídky zůstávají na nástěnce.

Vytvořit klíč

  1. Otevřete Nástěnka → Přístup k API.
  2. Pojmenujte klíč (například „Agent Claude“ nebo „Reporting Make“) a zvolte jeho oprávnění. U klíče, který smí objednávat, můžete nastavit limit na objednávku a limit na 24 hodin.
  3. Zkopírujte klíč. Začíná na glf_live_ a zobrazí se jen jednou: uchováváme pouze jeho otisk.
  4. Posílejte ho v hlavičce každého požadavku: Authorization: Bearer glf_live_…

Nejvýše 10 aktivních klíčů na organizaci. Odvolaný klíč okamžitě přestane fungovat, stejně jako klíče člena, který organizaci opustí. Držte klíč mimo repozitáře kódu: kdo ho má, jedná jménem vaší organizace.

Oprávnění klíče

Každý klíč nese jedno nebo více oprávnění. Požadavek bez potřebného oprávnění dostane 403 insufficient_scope a AI agent vidí jen povolené nástroje.

OprávněníDává přístup kKdo ho může udělit
readKatalog, kategorie, účet a zůstatek, historie kreditů, objednávky, cenové nabídky balíčků.Vždy zahrnuto.
cartPřidávání, úprava a odebírání položek košíku.Kterýkoli člen organizace.
purchaseObjednání košíku nebo balíčku za kredity. Zahrnuje košík.Pouze vlastník organizace.

Rychlý start

Všechny cesty začínají na https://www.getlinkfast.com/api/v1. Ponechte www: adresa bez www přesměrovává a klient HTTP po přesměrování už neposílá hlavičku Authorization.

Částky jsou v eurech bez DPH. Odpovědi jsou v JSON, pole v snake_case.

1. Načtěte svůj účet a zůstatek
curl https://www.getlinkfast.com/api/v1/account \
  -H "Authorization: Bearer glf_live_…"
2. Vyhledejte weby: DR 40 a více, ve francouzštině, článek hosta
curl "https://www.getlinkfast.com/api/v1/sites?dr_min=40&language=fr&product=guest_post&sort=dr&dir=desc&page_size=10" \
  -H "Authorization: Bearer glf_live_…"
3. Přidejte článek hosta do košíku
curl -X POST https://www.getlinkfast.com/api/v1/cart/items \
  -H "Authorization: Bearer glf_live_…" \
  -H "Content-Type: application/json" \
  -d '{"site_id":"8a1f0c3e-5b7d-4e2a-9c61-0f3b2d4e6a17","product_type":"guest_post","target_url":"https://www.example.com/invoicing","anchor":"invoicing software","topic":"How to choose invoicing software for a small business"}'

Nahraďte site_id id webu z kroku 2. Nikdy neposílejte cenu: počítá ji server.

4. Objednejte košík za kredity
curl -X POST https://www.getlinkfast.com/api/v1/checkout \
  -H "Authorization: Bearer glf_live_…" \
  -H "Idempotency-Key: order-2026-10-14-001"

Odpověď obsahuje id objednávky, strženou částku a váš zbývající zůstatek. Průběh pak sledujte přes GET /orders/{id}.

Objednávání za kredity

API objednává pouze za kredity a nikdy nespouští platbu kartou. Kredity se dobíjejí na nástěnce.

Objednávka bere položky guest_post a link_insertion z košíku. Ostatní položky, přidané z nástěnky, zůstávají v košíku a jsou uvedeny v skipped_items.

Ve výchozím stavu žádný limit: jedinou hranicí je váš zůstatek. U klíče, který smí objednávat, nastavte limit na objednávku a limit na klouzavých 24 hodin. Objednávka, která je překročí, je odmítnuta (403 spending_limit_exceeded, se zbývající částkou), bez stržení.

Nedostatečný zůstatek: 402 insufficient_credits, s chybějící částkou a odkazem na stránku Kredity, k předání někomu z vašeho týmu. Nic se nestrhne.

Dál vše probíhá jako z nástěnky: potvrzovací e-mail a sledování na obrazovce Objednávky, kde objednávka nese název klíče, který ji zadal.

Hlavička Idempotency-Key

  • Povinná u POST /checkout a POST /packs/orders: 8 až 128 tisknutelných znaků ASCII, bez mezer. Bez ní: 400 idempotency_key_required.
  • Jedna hodnota odpovídá jednomu záměru nákupu. Opětovné odeslání stejné hodnoty vrátí původní objednávku (200, "replayed": true) bez druhého stržení, i když se košík mezitím změnil.
  • Po vypršení časového limitu nebo výpadku sítě to zkuste znovu se stejnou hodnotou: nezaplatíte dvakrát.
  • Pro nový nákup vygenerujte novou hodnotu, například UUID.
  • U POST /checkout i u POST /packs/orders je hodnota už použitá pro jiný nákup odmítnuta: 409 idempotency_conflict, bez stržení. U balíčku je odmítnuta i stejná hodnota odeslaná s jiným obsahem.
  • Na straně MCP tuto roli plní potvrzovací token: nemusíte nic generovat.

Limity

  • 120 požadavků za minutu na klíč pro čtení a stejně tolik, odděleně, pro košík: jedno neubírá z druhého.
  • 10 volání za minutu na klíč na nákupní cesty nebo nástroje — včetně opakování, odmítnutí a kroku souhrnu v MCP.
  • 300 požadavků HTTP za minutu na klíč na serveru MCP. Každý volaný nástroj se navíc počítá do limitu svého oprávnění.
  • Nad tento limit: 429 rate_limited. Dobu čekání v sekundách udává hlavička Retry-After přes HTTP a details.retry_after_seconds ve výsledku nástroje MCP.
  • Nejvýše 100 výsledků na stránku (page_size).
  • Tělo požadavku: nejvýše 1 MB.

Chybové kódy

Každá chyba má stejný tvar. Testujte code: je stabilní. message je v angličtině a je určena vývojáři; details uvádí chybné pole nebo částky.

Příklad: nedostatečný zůstatek
{
  "error": {
    "code": "insufficient_credits",
    "message": "Not enough credits for this order. Nothing was debited. Ask a human to top up at credits_url, then retry with the same Idempotency-Key.",
    "details": {
      "missing_amount": 42,
      "credits_url": "https://www.getlinkfast.com/dashboard/credits"
    }
  }
}
KódHTTPCo znamená
invalid_json400Tělo požadavku není čitelný JSON. Zkontrolujte syntaxi a hlavičku Content-Type: application/json.
idempotency_key_required400Hlavička Idempotency-Key chybí nebo je chybná na nákupní cestě. Pošlete hodnotu o 8 až 128 znacích.
invalid_api_key401Klíč chybí, je chybný, neznámý nebo odvolaný, případně ho vytvořil člen, který organizaci opustil. Zkontrolujte hlavičku Authorization: Bearer glf_live_….
insufficient_credits402Nedostatečný zůstatek. details.missing_amount udává chybějící částku, details.credits_url stránku pro dobití. Nic nebylo strženo.
insufficient_scope403Klíč nemá oprávnění, které tato cesta nebo nástroj vyžaduje. Vytvořte klíč s tímto oprávněním.
spending_limit_exceeded403Objednávka překračuje limit klíče: na objednávku (window: order) nebo na 24 hodin (window: 24h). details.remaining udává zbytek. Nic nebylo strženo.
not_found404Zdroj nebyl nalezen nebo nepatří vaší organizaci.
method_not_allowed405Server MCP: GET a DELETE nejsou přijímány. Každou zprávu JSON-RPC posílejte jako POST.
organization_financial_hold409Nákupy jsou ve vaší organizaci zablokované. Kontaktujte nás. Nic nebylo strženo.
page_already_sold409Stránka v košíku (vložení odkazu) byla právě prodána. Odeberte položku a objednejte znovu s novým Idempotency-Key.
cart_already_ordered409Položka košíku už byla objednána jiným nákupem (nástěnka nebo jiný Idempotency-Key). Před objednáním s novou hodnotou si košík znovu načtěte.
idempotency_conflict409Tento Idempotency-Key už byl použit pro jiný nákup. Pro nový nákup použijte novou hodnotu.
not_ready409Audit ještě není hotový. Počkejte přes get_audit na stav ready a pak stránku přidejte.
full_pass_running409Úplná zpráva auditu se ještě připravuje. Zkuste to znovu za několik minut. Nic nebylo spuštěno.
limit_reached409Audit už obsahuje 8 stránek, které jste přidali, včetně probíhajících analýz. Nic nebylo spuštěno.
already_present409Tato stránka už v auditu je, nebo její analýza probíhá. Nic nebylo spuštěno.
already_ordered409Tento naplánovaný odkaz je už objednaný a nelze ho tady zrušit.
not_cancellable409Tento odkaz teď nelze zrušit. Přečtěte ho znovu přes get_plan.
team_planned409Tento odkaz naplánoval náš tým, ne API: zde jej nelze zrušit. Chce-li jej vlastník účtu změnit, kontaktuje podporu.
payload_too_large413Tělo požadavku přesahuje 1 MB.
invalid_parameter422Neplatný, opakovaný nebo neznámý parametr dotazu. details.fields uvádí každý chybný parametr a důvod.
invalid_arguments422Neplatná kombinace argumentů, například ani domain, ani audit_id, nebo obojí. details.field pojmenuje pole. Nic nebylo provedeno.
invalid_domain422Nečitelná doména nebo URL. Pošlete název domény, například example.com.
own_network_domain422Tato doména patří do naší publikační sítě: nelze ji auditovat. Nic nebylo spuštěno.
invalid_body422Neplatné nebo neznámé pole v těle. details.fields uvádí každé chybné pole a důvod.
product_not_available_via_api422API prodává článek hosta a vložení odkazu. Ostatní produkty se objednávají z nástěnky.
image_not_uploaded422Hlavní obrázek musí být nahrán do GetLinkFast z nástěnky.
cart_empty422Žádnou položku košíku nelze objednat přes API. Nic nebylo strženo.
cart_invalid422Některé položky jsou neúplné nebo už nejsou dostupné. details.items uvádí každou položku a její problémy. Nic nebylo strženo.
invalid_pack_input422Balíček nedodržuje svá pravidla (details.reason). Nic nebylo strženo.
site_unavailable422Tento web neexistuje nebo už není na prodej.
target_page_required422Vložení odkazu vyžaduje page_id: vezměte ho ze seznamu stránek webu.
target_page_not_found422Tato stránka k tomuto webu nepatří.
target_page_sold422Tato stránka už byla prodána.
target_page_withdrawn422Tato stránka už není nabízena.
target_page_already_in_cart422Tato stránka už je ve vašem košíku.
product_unavailable422Tento web tento produkt neprodává.
invalid_url422Adresu nelze přečíst. Pošlete úplnou adresu http(s) bez přihlašovacích údajů a portu.
other_site422Tato stránka není na auditované doméně. Pošlete stránku ze stejného webu.
invalid_keyword422Cílové vyhledávání je příliš dlouhé: nejvýše 120 znaků.
rate_limited429Příliš mnoho požadavků pro tento klíč. Počkejte počet sekund uvedený v hlavičce Retry-After přes HTTP, nebo v details.retry_after_seconds ve výsledku nástroje MCP.
audit_quota_exceeded429Tento klíč už za posledních 24 hodin spustil 10 auditů. Nic nebylo spuštěno: zkuste to později.
internal_error500Chyba na naší straně, už nahlášená týmu. Zkuste to později: nákup zopakovaný se stejným Idempotency-Key se nikdy nestrhne dvakrát.
engine_unavailable502Auditní nástroj je dočasně nedostupný. Nic nebylo spuštěno: zkuste to později.
packs_unavailable503Balíčky SEO/GEO zatím nejsou dostupné.
confirmation_expiredNástroj MCPPotvrzovací token vypršel, nebo se od souhrnu změnil košík, ceny či klíč. Nic nebylo strženo: zavolejte nástroj znovu bez tokenu a získejte nový souhrn.
purchase_unavailableNástroj MCPNákupy přes server MCP jsou dočasně nedostupné. Nic nebylo strženo. Zkuste to později.
unknown_toolNástroj MCPNeznámý nástroj, nebo není povolen oprávněními klíče. tools/list uvádí dostupné nástroje.
audit_failedNástroj MCPTento audit selhal, plán proto není možný. Spusťte nový přes run_audit. Nic nebylo provedeno.
audit_not_readyNástroj MCPTento audit ještě neskončil. Počkejte na stav ready přes get_audit a pak znovu zavolejte plan_links. Nic nebylo provedeno.
budget_too_lowNástroj MCPMěsíční rozpočet je pod minimem 100 € měsíčně. Nic nebylo provedeno.
start_date_too_farNástroj MCPDatum zahájení je příliš vzdálené. Zpráva uvádí poslední povolené datum. Nic nebylo provedeno.
too_many_pagesNástroj MCPProjekt sleduje omezený počet stránek. Pošlete méně nových stránek v target_urls. Nic nebylo provedeno.
plan_existsNástroj MCPTato doména už má naplánované, dosud neobjednané odkazy. Plány se nikdy nesloučí: odeberte je přes cancel_planned_link a začněte znovu. Nic nebylo provedeno.
pending_proposalsNástroj MCPNáš tým posuzuje navržené odkazy pro tuto doménu, proto zatím nelze přidat žádný plán. details.count udává jejich počet a details.retry_after datum, po kterém to zkuste znovu (pokud do té doby nebudou naplánovány, vyprší). Jinak požádejte vlastníka účtu, aby kontaktoval podporu. Nic nebylo provedeno.
no_links_foundNástroj MCPŽádný web z katalogu k těmto stránkám s tímto měsíčním rozpočtem nesedí. Zkuste jiné stránky nebo vyšší rozpočet. Nic nebylo provedeno.
plan_in_progressNástroj MCPTento plán se právě ukládá. Za pár sekund zavolejte plan_links znovu se stejným tokenem a přečtěte si výsledek.
plan_outcome_unknownNástroj MCPUkládání bylo přerušeno a jeho výsledek není znám. Nepotvrzujte znovu: přečtěte plán přes get_plan.
plan_conflictNástroj MCPPlán v této podobě už neplatí: projekt domény se změnil, jeho termíny už nespadají do měsíců rozpočtu (které začínají potvrzením), nebo některý z jeho webů už pro tuto doménu není k dispozici. details.reason říká, který případ nastal. Nic nebylo zapsáno: zavolejte znovu plan_links bez tokenu a získejte nový souhrn.
plan_retryNástroj MCPJiné volání s tímto tokenem skončilo bez uložení plánu. Zavolejte plan_links znovu se stejným tokenem a přečtěte si výsledek.

Server MCP

Server MCP dává vašemu AI agentovi stejné funkce jako API, se stejným klíčem. Jeho adresa: https://www.getlinkfast.com/api/mcp.

Claude Code

Jeden příkaz v terminálu:

Terminal — Claude Code
claude mcp add --transport http getlinkfast https://www.getlinkfast.com/api/mcp --header "Authorization: Bearer glf_live_…"

Cursor

V ~/.cursor/mcp.json. Vyhněte se souboru .cursor/mcp.json v projektu: často skončí v repozitáři, i s klíčem.

~/.cursor/mcp.json
{
  "mcpServers": {
    "getlinkfast": {
      "url": "https://www.getlinkfast.com/api/mcp",
      "headers": {
        "Authorization": "Bearer glf_live_…"
      }
    }
  }
}

Claude Desktop

Claude Desktop neposílá vlastní hlavičky vzdálenému serveru, a proto nemůže předat váš klíč. Připojí se nativně přes připojení OAuth, plánované v některé z příštích verzí. Dnes použijte Claude Code nebo Cursor: posílají klíč v hlavičce Authorization.

Nástroje

Agent vidí jen nástroje povolené oprávněními klíče: klíč bez práva objednávat nemá žádný nákupní nástroj.

read
search_sitesget_sitelist_site_pageslist_categoriesget_accountlist_ordersget_orderget_auditquote_packlist_auditsget_plan
cart
get_cartadd_to_cartupdate_cart_itemremove_cart_itemadd_audit_pagerun_auditcancel_planned_link
purchase
checkoutorder_packplan_links

Nákup ve dvou krocích

  1. Agent zavolá checkout nebo order_pack bez confirmation_token: nic se nestrhne. Dostane souhrn (položky, celkem, zůstatek po stržení, zbývající limit) a confirmation_token.
  2. Ukáže vám tento souhrn. Pokud souhlasíte, zavolá nástroj znovu s confirmation_token: objednávka je zadána a stržena.
  3. Token platí 10 minut. Pokud se mezitím změní košík, cena nebo klíč, je odmítnut (confirmation_expired) a agent zopakuje krok 1. Opětovné volání se stejným tokenem po výpadku vrátí stejnou objednávku, bez druhého stržení.

Ručně psaný klient

Server je bez relace: každá zpráva JSON-RPC jde jako POST a odpověď přichází v JSON. Posílejte Accept: application/json, text/event-stream a Content-Type: application/json, jinak server odpoví 406. GET a DELETE vracejí 405.

Vypsat nástroje vašeho klíče
curl -X POST https://www.getlinkfast.com/api/mcp \
  -H "Authorization: Bearer glf_live_…" \
  -H "Accept: application/json, text/event-stream" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Audit a plánování

Agent může zauditovat web a podle zprávy rozložit odkazy na několik měsíců. Čtyři kroky, s nástroji serveru MCP.

  1. run_audit spustí úplný audit domény: technické kontroly, viditelnost v ChatGPT a weby, kde by odkaz pomohl. Počítejte s několika minutami. Nic se nestrhává a zpráva se odemkne kvótou auditů organizace, pokud ji má. Limit: 10 auditů na klíč za 24 hodin; opětovný požadavek na stejnou doménu do hodiny vrátí existující audit.
  2. get_audit vrátí stav a aktuální krok, poté zprávu v summary, jakmile je stav ready. Volejte ho každých 30 až 60 sekund. list_audits vypíše audity organizace od nejnovějšího.
  3. plan_links sestaví z hotového auditu kalendář: měsíční rozpočet v eurech bez DPH (alespoň 100 €), 2 až 12 měsíců a volitelně datum zahájení a cílové stránky. Stejně jako při nákupu jsou to dva kroky. Bez tokenu se nic neuloží: agent dostane kalendář (odkazy, data odeslání, součet) a confirmation_token platný 10 minut. Po vašem souhlasu zavolá nástroj znovu se stejnými poli a tokenem a plán se uloží.
  4. get_plan sleduje každý odkaz: cílovou stránku, kotvu, cenu a stav (naplánováno, objednáno, zveřejněno, zrušeno nebo selhalo, u selhání s příčinou, například insufficient_credits). cancel_planned_link zruší odkaz naplánovaný přes API nebo všechny dosud neobjednané odkazy domény. Odkazy naplánované naším týmem zůstávají: team_planned pro jeden odkaz, skipped_team_planned pro jejich počet.

Při uložení plánu se nic nestrhává. Každý odkaz se strhne v kreditech v den odeslání, za cenu znovu načtenou téhož dne, při denním ranním průchodu (kolem 06:20 UTC). Pokud ten den chybí zůstatek, odkaz se neobjedná a v get_plan se zobrazí jako neúspěšný. Už objednaný odkaz nelze zrušit.

Oprávnění: run_audit a cancel_planned_link vyžadují cart, plan_links vyžaduje purchase a get_audit, list_audits a get_plan vyžadují read. Limity útrat klíče platí i pro plánované odkazy.

V nástěnce zobrazuje stránka Delegování tyto odkazy v bloku „Naplánované odkazy“. Vlastník organizace tam může odebrat odkazy naplánované přes API. Odkazy naplánované naším týmem jsou jen ke čtení.

Reference

Každá cesta s oprávněním a odpovídajícím nástrojem MCP. Parametry, schémata odpovědí a chyby cesta po cestě: popis OpenAPI 3.1.

CestaOprávněníNástroj MCPÚčel
GET /sitesreadsearch_sitesVyhledávání v katalogu: metriky, cena, kategorie, jazyk, produkt; řazení a stránkování.
GET /sites/{id}readget_siteJeden web: metriky, ceny a pravidla publikace.
GET /sites/{id}/pagesreadlist_site_pagesStránky webu otevřené pro vložení odkazu, s cenou a návštěvností z Googlu.
GET /categoriesreadlist_categoriesKategorie a jejich id, pro filtr category.
GET /accountreadget_accountOrganizace, zůstatek kreditů, oprávnění a limity klíče, útrata za 24 hodin.
GET /credits/transactionsreadžádnýHistorie kreditů.
GET /ordersreadlist_ordersVaše objednávky, filtrovatelné podle stavu a data.
GET /orders/{id}readget_orderJedna objednávka a její položky, s jejich stavem.
GET /cart/itemscartget_cartKošík: položky, aktuální ceny a blokující problémy.
POST /cart/itemscartadd_to_cartPřidání článku hosta nebo vložení odkazu.
PATCH /cart/items/{id}cartupdate_cart_itemDoplnění nebo úprava briefu položky.
DELETE /cart/items/{id}cartremove_cart_itemOdebrání položky.
GET /audits/{id}readget_auditPřečíst audit: stav, aktuální krok, poté zprávu.
POST /audits/{id}/pagescartadd_audit_pagePřidá do hotového auditu stránku k posílení (nejvýše 8). Analýza trvá 1 až 4 minuty: sledujte ji přes get_audit. Nic se nestrhává.
POST /checkoutpurchasecheckoutObjednání košíku za kredity.
POST /packs/quotereadquote_packNacenění balíčku SEO/GEO, bez stržení.
POST /packs/orderspurchaseorder_packObjednání balíčku SEO/GEO za kredity.
Jen server MCPcartrun_auditSpustit úplný audit domény. Nic se nestrhává.
Jen server MCPreadlist_auditsVypsat audity organizace od nejnovějšího.
Jen server MCPpurchaseplan_linksNaplánovat odkazy na 2 až 12 měsíců podle auditu, ve dvou krocích. Při uložení se nic nestrhává.
Jen server MCPreadget_planPřečíst naplánované odkazy domény: datum odeslání a stav každého.
Jen server MCPcartcancel_planned_linkZrušit jeden naplánovaný odkaz nebo všechny dosud neobjednané odkazy domény.

Otázka k API? Napište nám, odpoví vám člověk z týmu.