Prejsť na obsah

Pre AI agentov

Dajte svojmu agentovi ruky v reálnom svete.

MCP server a REST API, cez ktoré agent objednáva služby, konzultácie, tovar a mikroúlohy od overených ľudí v Česku a na Slovensku — s úschovou, štruktúrovanými chybami a zoznamom next_actions v každej odpovedi.

32

MCP nástrojov, každý aj ako REST

2

krajiny v prevádzke

8 %

provízia, platí ju poskytovateľ

Žiadny poplatok pre agentov, žiadne predplatné.

POST https://fordeal.ai/mcp · tools/call

{"method":"tools/call","params":{"name":"request_anything",
 "arguments":{"text":"Piano tuned, then carried up two floors",
              "address":"Praha 10","budget_max":3000}}}

{"job":{"id":"job_03H","kind":"open_request","status":"open"},
 "notified_providers":7,
 "next_actions":[{"tool":"get_offers","params":{"job_id":"job_03H"}}]}
Vyskúšať v sandboxeZískať API kľúčPrečítať llms.txt

Demo nižšie nepotrebuje kľúč. Vlastný kľúč je zadarmo a je to jedno volanie.

Napíšte úlohu a sledujte, ako trhovisko odpovie

Beží naživo proti sandboxu, bez kľúča: presne tie tools/call payloady, ktoré posiela skutočný agent, a odpovede, ktoré dostane. Simulovaní poskytovatelia, falošné peniaze, najviac 5 spustení za 10 minút.

sandbox · falošné peniaze

Alebo skúste jednu z týchto

POST /mcp · tools/call

$ čakám na úlohu

Pripojte svojho klienta

Streamable HTTP na jednej URL, Bearer kľúč v hlavičke. Vyberte klienta, vložte, hotovo.

Vložte do claude_desktop_config.json a reštartujte aplikáciu.

Claude Desktop

{
  "mcpServers": {
    "fordeal": {
      "type": "http",
      "url": "https://fordeal.ai/mcp",
      "headers": {
        "Authorization": "Bearer <key>"
      }
    }
  }
}

Endpointy

Autentifikácia a tvar odpovede

Kľúč posielajte v hlavičke Authorization: Bearer <key>. Každý zápis prijíma idempotency_key. Každá odpoveď obsahuje id, stav, cenu s menou, časy v ISO 8601 UTC a zoznam next_actions, takže agent nikdy nemusí hádať, čo zavolať ďalej.

Chyby

Chyby sú štruktúrované a návodné: error.code hovorí, čo sa pokazilo, a error.fix, čo zmeniť. Nie je potrebné parsovať text.

{
  "error": {
    "code": "country_not_supported",
    "message": "Could not determine a supported country (got \"DE\")",
    "fix": "Pass an ISO 3166-1 alpha-2 country code in \"country\". Supported: CZ, SK."
  }
}

Sandbox

Najprv si prejdite celý tok s poskytovateľmi, ktorí sú simulovaní, a s peniazmi, ktoré sú falošné. Nástroje, parametre, odpovede aj chyby sú rovnaké ako v ostrej prevádzke — prechod na ostro znamená poslať druhý kľúč.

Ako získať kľúče

Registrácia vráti oba kľúče toho istého agenta v jednej odpovedi, a to len raz. Uložte si ich, znova ich nezískate.

Registrácia

curl -sX POST https://fordeal.ai/api/v1/agents/register \
  -H 'Content-Type: application/json' \
  -d '{"name":"My shopping agent","owner_email":"you@example.com","platform":"claude","country":"SK"}'

# { "api_key": "fd_live_…", "test_api_key": "fd_test_…",
#   "credit": { "balance": 20, "currency": "EUR" } }
fd_test_
Sandbox. Simulovaní poskytovatelia, falošné peniaze: nič sa neúčtuje, nepoužije sa žiadna karta a nikto skutočný nedostane správu. Každá odpoveď nesie mode: "sandbox" a sandbox_note.
fd_live_
Skutočné trhovisko: skutoční poskytovatelia na WhatsApp a skutočná úschova na karte majiteľa. Každá odpoveď nesie mode: "live".

Čo simulátor robí

Po create_job dvaja alebo traja simulovaní poskytovatelia odpovedia pevnou cenou okolo odhadu a jeden odmietne. Po accept_offer vybraný poskytovateľ prácu začne a potom ju nahlási ako hotovú s fotkou a GPS. Konzultácia dostane odkaz na stretnutie a kúpený tovar sa odošle, takže každý tok sa dá dokončiť až do konca. Reakcie trvajú niekoľko sekúnd, presne ako keď poskytovateľ odpovedá na WhatsApp, takže sa na get_status a get_offers dopytujte rovnako ako v ostrej prevádzke.

Vložte do popisu zákazky jeden z týchto prepínačov a vynútite si nešťastnú cestu:

  • SIMULATE_NO_OFFERSnikto neodpovie. Zákazka zostane v stave open a get_offers vráti prázdny zoznam.
  • SIMULATE_DISPUTEposkytovateľ nahlási hotovo so zámerne zlým dôkazom (iná adresa, GPS ďaleko), takže si môžete vyskúšať confirm_done s approve: false a vidieť spor.

POST https://fordeal.ai/api/v1/sandbox/resetzmaže všetko, čo váš kľúč v sandboxe vytvoril, a ostatných agentov sa nedotkne. Sandbox beží v pamäti, takže sa vyprázdni aj pri reštarte servera.

POST https://fordeal.ai/api/v1/sandbox/demospustí celé kolo na demo agentovi sandboxu bez akéhokoľvek kľúča a vráti každé volanie aj odpoveď. Používa ho interaktívne demo vyššie; 5 spustení na IP za 10 minút.

Štartovací kredit

Novo zaregistrovaný agent dostane štartovací kredit v mene svojej krajiny: 500,00 CZK (Česko) · 20,00 € (Slovensko). Pri ostrých zákazkách sa míňa skôr než karta majiteľa — accept_offer autorizuje len časť, ktorú kredit nepokryje, a keď pokryje celú cenu, žiadna platba kartou sa nekoná. Každá odpoveď pri zákazke hovorí, čo išlo z kreditu a čo z karty, a GET /api/v1/agents/me vracia zostávajúci zostatok. Behy v sandboxe sa ho nikdy nedotknú.

Jedna zákazka od zadania po zaplatené

Päť volaní aj s odpoveďami, ktoré sandbox naozaj vracia. Pošlite testovací kľúč v hlavičke Authorization: Bearer a potom rovnakých päť volaní zopakujte s ostrým kľúčom — nič iné sa nemení.

1. create_job   {"description":"Kape kohoutek v koupelně","category":"plumber","address":"Vinohradská 10, Praha 2"}
   → {"job":{"id":"8f21…","status":"open","currency":"CZK"},"mode":"sandbox","sandbox_note":"Sandbox: … the money is fake …"}
2. get_offers   {"job_id":"8f21…"}                                    ← poll for a few seconds
   → {"offers":[{"id":"of_1","price":{"amount":1500,"currency":"CZK"},"eta":"…T09:00:00Z"},{"id":"of_2","price":{"amount":1320,"currency":"CZK"}}],"mode":"sandbox"}
3. accept_offer {"job_id":"8f21…","offer_id":"of_2"}
   → {"job":{"status":"accepted","price_agreed":{"amount":1320,"currency":"CZK"}},"payer":{"credit_used":{"amount":0},"card_charged":{"amount":1320}},"mode":"sandbox"}
4. get_status   {"job_id":"8f21…"}
   → {"job":{"status":"done_by_provider","proof":{"photos":["https://sandbox.fordeal.ai/proof/8f21….jpg"],"gps":{"lat":50.07,"lng":14.44}}},"mode":"sandbox"}
5. confirm_done {"job_id":"8f21…","approve":true}
   → {"job":{"status":"paid","commission":{"amount":105.6,"currency":"CZK"},"payout":{"amount":1214.4,"currency":"CZK"}},"mode":"sandbox"}

Registrácia agenta

Registrácia je zadarmo a dostanete API kľúč, mesačný rozpočtový limit pod svojou kontrolou a audit log, do ktorého majiteľ vidí.

Nástroje

Každý nástroj nižšie je dostupný ako MCP nástroj aj ako volanie na REST base.

Služby a otvorené dopyty

12 nástrojov
search_providersGET /api/v1/providers?address=&category=Nájde overených poskytovateľov podľa kategórie, textu, polohy a okruhu, so štatistikami a cenami.

Volanie

{
  "category": "plumber",
  "address": "Praha 4",
  "radius_km": 15,
  "max_price": 2000
}

Odpoveď

{
  "providers": [
    {
      "id": "prv_01H",
      "slug": "jan-h-instalater",
      "display_name": "Jan H.",
      "city": "Praha",
      "distance_km": 3.2,
      "hourly_rate": {
        "min": 750,
        "max": 1200,
        "currency": "CZK"
      },
      "verified": true,
      "stats": {
        "jobs_completed": 84,
        "on_time_rate": 0.96,
        "price_kept_rate": 0.98,
        "response_minutes_avg": 12
      }
    }
  ],
  "next_actions": [
    {
      "tool": "estimate_price",
      "description": "Get a price range before creating a job"
    }
  ]
}
estimate_pricePOST /api/v1/price-estimateVráti cenové rozpätie pre opísanú zákazku v danom mieste, ešte než čokoľvek vytvoríte.

Volanie

{
  "category": "plumber",
  "description": "Dripping bathroom tap, two days",
  "address": "Praha 4"
}

Odpoveď

{
  "min": 900,
  "max": 1600,
  "currency": "CZK",
  "unit": "job",
  "reasoning": "Call-out plus one hour at Prague rates",
  "next_actions": [
    {
      "tool": "create_job",
      "description": "Create the request"
    }
  ]
}
create_jobPOST /api/v1/jobsVytvorí dopyt. Vracia id zákazky, stav a ďalšie možné akcie.

Volanie

{
  "category": "plumber",
  "description": "Dripping bathroom tap, two days",
  "address": "Krymska 12, Praha 10",
  "time_window": {
    "start": "2026-09-10T08:00:00Z",
    "end": "2026-09-10T16:00:00Z"
  },
  "budget_max": {
    "amount": 2000,
    "currency": "CZK"
  },
  "photos": [
    "https://files.fordeal.ai/u/abc.jpg"
  ],
  "idempotency_key": "job-2026-09-07-001"
}

Odpoveď

{
  "job": {
    "id": "job_01H",
    "status": "open",
    "currency": "CZK",
    "price_estimate": {
      "min": 900,
      "max": 1600,
      "currency": "CZK"
    },
    "time_window_start": "2026-09-10T08:00:00Z",
    "time_window_end": "2026-09-10T16:00:00Z"
  },
  "next_actions": [
    {
      "tool": "get_offers",
      "description": "Poll for offers",
      "params": {
        "job_id": "job_01H"
      }
    }
  ]
}
request_anythingPOST /api/v1/requestsVoľný dopyt. Fordeal text zaradí: jasná zhoda sa stane bežnou zákazkou, inak vznikne otvorený dopyt, na ktorý môže ponukou odpovedať ktorýkoľvek overený poskytovateľ v okolí. Vracia job_id, open_request a classified_as.

Volanie

{
  "text": "Someone to tune my grandmother's piano and then carry it up two floors, Saturday morning",
  "address": "Krymska 12, Praha 10",
  "budget_max": 3000,
  "deadline": "2026-09-12T12:00:00Z",
  "idempotency_key": "anything-2026-09-07-001"
}

Odpoveď

{
  "job": {
    "id": "job_03H",
    "kind": "open_request",
    "category": null,
    "status": "open",
    "currency": "CZK",
    "budget_max": {
      "amount": 3000,
      "currency": "CZK"
    }
  },
  "classified_as": {
    "category": null,
    "confidence": 0
  },
  "open_request": true,
  "notified_providers": 7,
  "next_actions": [
    {
      "tool": "get_offers",
      "description": "Open request sent to 7 providers nearby; check for offers",
      "params": {
        "job_id": "job_03H"
      }
    }
  ]
}
list_open_requestsGET /api/v1/requests/open?address=&radius_km=Otvorené dopyty v okolí miesta, ktoré nespadli do žiadnej kategórie, pre poskytovateľov a agentov, ktorí za nich konajú. Verejné, bez osobných údajov.

Volanie

{
  "address": "Praha",
  "radius_km": 25
}

Odpoveď

{
  "count": 1,
  "country": "CZ",
  "requests": [
    {
      "id": "job_03H",
      "title": "Piano tuned and carried up two floors",
      "description": "Someone to tune my grandmother's piano and then carry it up two floors, Saturday morning",
      "city": "Praha",
      "budget_max": {
        "amount": 3000,
        "currency": "CZK"
      },
      "deadline": "2026-09-12T12:00:00Z",
      "created_at": "2026-09-07T09:12:00Z",
      "distance_km": 2.4
    }
  ],
  "next_actions": [
    {
      "tool": "request_anything",
      "description": "Post your own free-form request"
    }
  ]
}
get_offersGET /api/v1/jobs/{job_id}/offersVypíše ponuky, ktoré poskytovatelia na zákazku poslali, vrátane ceny, termínu a štatistík.

Volanie

{
  "job_id": "job_01H"
}

Odpoveď

{
  "offers": [
    {
      "id": "ofr_01H",
      "provider_id": "prv_01H",
      "price": {
        "amount": 1200,
        "currency": "CZK"
      },
      "eta": "2026-09-10T09:30:00Z",
      "status": "sent",
      "provider": {
        "display_name": "Jan H.",
        "stats": {
          "on_time_rate": 0.96,
          "price_kept_rate": 0.98
        }
      }
    }
  ],
  "next_actions": [
    {
      "tool": "accept_offer",
      "description": "Accept one offer",
      "params": {
        "job_id": "job_01H",
        "offer_id": "ofr_01H"
      }
    }
  ]
}
accept_offerPOST /api/v1/jobs/{job_id}/acceptPrijme jednu ponuku. V tej chvíli sa autorizuje platba do úschovy.

Volanie

{
  "job_id": "job_01H",
  "offer_id": "ofr_01H",
  "idempotency_key": "accept-001"
}

Odpoveď

{
  "job": {
    "id": "job_01H",
    "status": "accepted",
    "price_agreed": {
      "amount": 1200,
      "currency": "CZK"
    }
  },
  "payment": {
    "status": "requires_capture",
    "held": {
      "amount": 1200,
      "currency": "CZK"
    }
  },
  "next_actions": [
    {
      "tool": "get_status",
      "description": "Follow the job",
      "params": {
        "job_id": "job_01H"
      }
    }
  ]
}
get_statusGET /api/v1/jobs/{job_id}Prečíta aktuálny stav zákazky: status, správy, dôkazy, cenu a časy.

Volanie

{
  "job_id": "job_01H"
}

Odpoveď

{
  "job": {
    "id": "job_01H",
    "status": "done_by_provider",
    "done_at": "2026-09-10T10:40:00Z",
    "proof": {
      "photos": [
        "https://files.fordeal.ai/p/1.jpg"
      ]
    },
    "auto_confirm_at": "2026-09-12T10:40:00Z"
  },
  "next_actions": [
    {
      "tool": "confirm_done",
      "description": "Release or dispute",
      "params": {
        "job_id": "job_01H",
        "approve": true
      }
    }
  ]
}
confirm_donePOST /api/v1/jobs/{job_id}/confirmPotvrdí hotovú zákazku a uvoľní peniaze, alebo ju odmietne a otvorí spor.

Volanie

{
  "job_id": "job_01H",
  "approve": true,
  "note": "Fixed, clean work"
}

Odpoveď

{
  "job": {
    "id": "job_01H",
    "status": "paid",
    "paid_at": "2026-09-10T10:45:00Z"
  },
  "payout": {
    "amount": 1104,
    "currency": "CZK"
  },
  "commission": {
    "amount": 96,
    "currency": "CZK",
    "rate": 0.08
  },
  "next_actions": []
}
book_servicePOST /api/v1/bookingsOkamžite rezervuje službu s pevnou cenou na voľný termín (poskytovatelia s okamžitou rezerváciou).

Volanie

{
  "service_id": "svc_01H",
  "slot": "2026-09-12T09:00:00Z"
}

Odpoveď

{
  "job": {
    "id": "job_05H",
    "kind": "instant_booking",
    "status": "accepted",
    "price_agreed": {
      "amount": 450,
      "currency": "CZK"
    },
    "scheduled_at": "2026-09-12T09:00:00Z"
  },
  "next_actions": [
    {
      "tool": "get_status",
      "description": "Poll the booking",
      "params": {
        "job_id": "job_05H"
      }
    }
  ]
}
cancel_jobPOST /api/v1/jobs/:id/cancelZruší zákazku pred začiatkom práce; zadarmo, kým nie je prijatá žiadna ponuka.

Volanie

{
  "job_id": "job_01H",
  "reason": "No longer needed"
}

Odpoveď

{
  "job": {
    "id": "job_01H",
    "status": "cancelled"
  },
  "next_actions": []
}
leave_reviewPOST /api/v1/jobs/:id/reviewPridá overenú recenziu po zaplatení zákazky.

Volanie

{
  "job_id": "job_01H",
  "rating": 5,
  "text": "On time, price as quoted"
}

Odpoveď

{
  "ok": true
}

Konzultácie

4 nástroje
explain_medical_reportPOST /api/v1/medical/explainVysvetlí lekársku správu alebo laboratórne výsledky bežnou rečou a odporučí odbornosť na konzultáciu.

Volanie

{
  "file_url": "https://files.fordeal.ai/u/report.pdf",
  "locale": "en"
}

Odpoveď

{
  "summary": "Blood count is normal apart from slightly raised CRP.",
  "values": [
    {
      "name": "CRP",
      "value": "12 mg/l",
      "reference": "0-5 mg/l",
      "status": "above"
    }
  ],
  "questions_for_doctor": [
    "Could the raised CRP come from the infection treated last week?"
  ],
  "specialty_suggested": "general-practitioner",
  "disclaimer": "This is an explanation, not a diagnosis.",
  "next_actions": [
    {
      "tool": "search_consultants",
      "description": "Find a doctor",
      "params": {
        "category": "general-practitioner"
      }
    }
  ]
}
search_consultantsPOST /api/v1/search_consultantsNájde overených konzultantov danej odbornosti s voľnými termínmi.

Volanie

{
  "category": "dermatologist",
  "date": "2026-09-11",
  "language": "en"
}

Odpoveď

{
  "consultants": [
    {
      "id": "prv_09H",
      "display_name": "MUDr. Eva N.",
      "license_verified": true,
      "registry": "CLK",
      "consultation_price": {
        "amount": 900,
        "currency": "CZK"
      },
      "slots": [
        {
          "id": "slt_1",
          "start": "2026-09-11T13:00:00Z",
          "end": "2026-09-11T13:30:00Z"
        }
      ]
    }
  ],
  "next_actions": [
    {
      "tool": "book_consultation",
      "description": "Book a slot"
    }
  ]
}
book_consultationPOST /api/v1/consultationsRezervuje u konzultanta blok na 15, 30 alebo 60 minút.

Volanie

{
  "provider_id": "prv_09H",
  "slot": "slt_1",
  "minutes": 30,
  "idempotency_key": "cons-001"
}

Odpoveď

{
  "consultation": {
    "job_id": "job_03H",
    "provider_id": "prv_09H",
    "slot_start": "2026-09-11T13:00:00Z",
    "slot_end": "2026-09-11T13:30:00Z",
    "channel": "video"
  },
  "next_actions": [
    {
      "tool": "get_consultation_link",
      "description": "Get the meeting link",
      "params": {
        "job_id": "job_03H"
      }
    }
  ]
}

Doučovanie

4 nástroje
search_tutorsGET /api/v1/tutors?subject=&level=&mode=Nájde lektorov pre predmet a úroveň, zoradených podľa zhody, s voľnými termínmi lekcií. Len pre dospelých.

Volanie

{
  "subject": "math",
  "level": "secondary",
  "mode": "online",
  "style": "patient, exam papers",
  "country": "CZ"
}

Odpoveď

{
  "adults_only": true,
  "currency": "CZK",
  "tutors": [
    {
      "id": "prv_21H",
      "display_name": "Mgr. Jana K.",
      "tutoring": {
        "subjects": [
          "math",
          "physics"
        ],
        "levels": [
          "secondary"
        ],
        "price_per_hour": {
          "amount": 450,
          "currency": "CZK"
        },
        "modes": [
          "online"
        ],
        "style": "Patient, step by step.",
        "package_discount_percent": {
          "5": 5,
          "10": 10
        }
      },
      "match": {
        "score": 0.92,
        "reason": "teaches math, secondary level, style: patient"
      },
      "slots": [
        {
          "id": "avail_prv_21H_20260914T130000",
          "start": "2026-09-14T13:00:00Z",
          "end": "2026-09-14T14:00:00Z"
        }
      ]
    }
  ],
  "next_actions": [
    {
      "tool": "book_lesson",
      "description": "Book one lesson in a listed slot",
      "params": {
        "provider_id": "prv_21H",
        "slot_start": "2026-09-14T13:00:00Z",
        "subject": "math",
        "level": "secondary",
        "student_is_adult": true
      }
    }
  ]
}
book_lessonPOST /api/v1/lessonsRezervuje jednu lekciu v ponúknutom termíne; platba ide do úschovy za každú lekciu zvlášť. Vyžaduje student_is_adult=true.

Volanie

{
  "provider_id": "prv_21H",
  "slot_start": "2026-09-14T13:00:00Z",
  "subject": "math",
  "level": "secondary",
  "mode": "online",
  "package_id": "pkg_01H",
  "student_is_adult": true,
  "idempotency_key": "lesson-001"
}

Odpoveď

{
  "job": {
    "id": "job_07H",
    "kind": "consultation",
    "status": "accepted",
    "price_agreed": {
      "amount": 405,
      "currency": "CZK"
    },
    "lesson_package_id": "pkg_01H",
    "scheduled_at": "2026-09-14T13:00:00Z"
  },
  "consultation": {
    "channel": "video",
    "meeting_url": "https://fordeal.ai/meet/job_07H"
  },
  "payment": {
    "status": "requires_capture"
  },
  "lesson": {
    "subject": "math",
    "level": "secondary",
    "mode": "online",
    "duration_min": 60,
    "price": {
      "amount": 405,
      "currency": "CZK"
    },
    "package_id": "pkg_01H",
    "lessons_left": 4
  },
  "next_actions": [
    {
      "tool": "get_consultation_link",
      "description": "Meeting link for the video lesson",
      "params": {
        "job_id": "job_07H"
      }
    }
  ]
}
buy_lesson_packagePOST /api/v1/lesson-packagesZamkne zľavnenú cenu za lekciu pre 5 alebo 10 lekcií. Nič sa neplatí, kým nie je každá lekcia rezervovaná.

Volanie

{
  "provider_id": "prv_21H",
  "lessons": 5,
  "subject": "math",
  "level": "secondary",
  "idempotency_key": "pkg-001"
}

Odpoveď

{
  "package": {
    "id": "pkg_01H",
    "lessons_total": 5,
    "lessons_used": 0,
    "price_per_lesson": {
      "amount": 405,
      "currency": "CZK"
    },
    "status": "active"
  },
  "lessons": [],
  "lessons_left": 5,
  "charged_now": {
    "amount": 0,
    "currency": "CZK"
  },
  "next_actions": [
    {
      "tool": "book_lesson",
      "description": "Book a lesson from this package",
      "params": {
        "provider_id": "prv_21H",
        "package_id": "pkg_01H",
        "subject": "math",
        "level": "secondary",
        "student_is_adult": true
      }
    }
  ]
}
get_lesson_packageGET /api/v1/lesson-packages/{package_id}Prečíta balík: využité a zostávajúce lekcie a každú lekciu z neho rezervovanú.

Volanie

{
  "package_id": "pkg_01H"
}

Odpoveď

{
  "package": {
    "id": "pkg_01H",
    "lessons_total": 5,
    "lessons_used": 2,
    "price_per_lesson": {
      "amount": 405,
      "currency": "CZK"
    },
    "status": "active"
  },
  "lessons": [
    {
      "id": "job_07H",
      "status": "paid"
    },
    {
      "id": "job_08H",
      "status": "accepted"
    }
  ],
  "lessons_left": 3,
  "next_actions": [
    {
      "tool": "book_lesson",
      "description": "Book the next lesson",
      "params": {
        "provider_id": "prv_21H",
        "package_id": "pkg_01H"
      }
    }
  ]
}

Tovar

9 nástrojov
search_itemsPOST /api/v1/search_itemsHľadá ponúkaný tovar podľa textu, kategórie, polohy a maximálnej ceny.

Volanie

{
  "text": "road bike",
  "category": "sports",
  "location": "Brno",
  "max_price": 12000
}

Odpoveď

{
  "items": [
    {
      "id": "itm_01H",
      "title": "Road bike 56 cm",
      "price": {
        "amount": 9500,
        "currency": "CZK"
      },
      "condition": "used",
      "city": "Brno",
      "delivery_options": [
        "pickup",
        "courier"
      ]
    }
  ],
  "next_actions": [
    {
      "tool": "buy_item",
      "description": "Buy at the listed price",
      "params": {
        "item_id": "itm_01H"
      }
    }
  ]
}
buy_itemPOST /api/v1/items/{item_id}/buyKúpi tovar za uvedenú cenu. Peniaze idú do úschovy.

Volanie

{
  "item_id": "itm_01H",
  "delivery": "courier",
  "delivery_address": "Veveří 1, Brno",
  "idempotency_key": "buy-001"
}

Odpoveď

{
  "order": {
    "id": "ord_01H",
    "status": "paid",
    "price": {
      "amount": 9500,
      "currency": "CZK"
    },
    "delivery": "courier"
  },
  "next_actions": [
    {
      "tool": "get_status",
      "description": "Follow the order",
      "params": {
        "order_id": "ord_01H"
      }
    }
  ]
}
make_offerPOST /api/v1/items/{item_id}/offersPonúkne za tovar inú cenu.

Volanie

{
  "item_id": "itm_01H",
  "price": {
    "amount": 8500,
    "currency": "CZK"
  },
  "message": "Can collect today"
}

Odpoveď

{
  "offer": {
    "id": "iof_01H",
    "status": "sent",
    "price": {
      "amount": 8500,
      "currency": "CZK"
    }
  },
  "next_actions": []
}
list_itemPOST /api/v1/itemsVystaví tovar na predaj.

Volanie

{
  "title": "Road bike 56 cm",
  "description": "Aluminium frame, serviced in June",
  "price": {
    "amount": 9500,
    "currency": "CZK"
  },
  "condition": "used",
  "photos": [
    "https://files.fordeal.ai/u/bike.jpg"
  ],
  "location": "Brno"
}

Odpoveď

{
  "item": {
    "id": "itm_02H",
    "status": "active"
  },
  "next_actions": []
}
accept_item_offerPOST /api/v1/items/{item_id}/offers/{offer_id}/acceptPrijme ponuku, ktorú niekto poslal na váš tovar.

Volanie

{
  "item_id": "itm_02H",
  "offer_id": "iof_02H"
}

Odpoveď

{
  "order": {
    "id": "ord_02H",
    "status": "paid",
    "price": {
      "amount": 8500,
      "currency": "CZK"
    }
  },
  "next_actions": [
    {
      "tool": "get_status",
      "description": "Follow the order",
      "params": {
        "order_id": "ord_02H"
      }
    }
  ]
}
get_item_statusGET /api/v1/items/:idZistí stav tovaru a objednávky: ponuky, odoslanie, výplata.

Volanie

{
  "item_id": "itm_01H"
}

Odpoveď

{
  "item": {
    "id": "itm_01H",
    "status": "reserved",
    "price": {
      "amount": 250,
      "currency": "EUR"
    }
  },
  "order": {
    "status": "shipped",
    "tracking_url": "https://tracking.example/1"
  },
  "next_actions": [
    {
      "tool": "confirm_item_received",
      "description": "Release the payment once the item arrived",
      "params": {
        "item_id": "itm_01H"
      }
    }
  ]
}
update_itemPATCH /api/v1/items/:idZmení cenu, popis alebo dostupnosť vášho tovaru.

Volanie

{
  "item_id": "itm_01H",
  "price": 220,
  "negotiable": true
}

Odpoveď

{
  "item": {
    "id": "itm_01H",
    "price": {
      "amount": 220,
      "currency": "EUR"
    },
    "negotiable": true
  },
  "next_actions": []
}
mark_item_shippedPOST /api/v1/items/:id/shippedPredávajúci označí tovar ako odoslaný, voliteľne so sledovacím odkazom.

Volanie

{
  "item_id": "itm_01H",
  "tracking_url": "https://tracking.example/1"
}

Odpoveď

{
  "order": {
    "status": "shipped"
  },
  "next_actions": [
    {
      "tool": "get_item_status",
      "description": "Wait for the buyer to confirm receipt"
    }
  ]
}
confirm_item_receivedPOST /api/v1/items/:id/confirm-receivedKupujúci potvrdí prevzatie; peniaze z úschovy idú predávajúcemu mínus provízia.

Volanie

{
  "item_id": "itm_01H"
}

Odpoveď

{
  "item": {
    "id": "itm_01H",
    "status": "sold"
  },
  "order": {
    "status": "paid_out",
    "commission": {
      "amount": 20,
      "currency": "EUR"
    },
    "payout": {
      "amount": 230,
      "currency": "EUR"
    }
  },
  "next_actions": []
}

Práca a mikroúlohy

2 nástroje
create_taskPOST /api/v1/tasksVytvorí mikroúlohu pre človeka na mieste, s dôkazmi, ktoré vyžadujete.

Volanie

{
  "description": "Photograph the notice board at the town hall entrance",
  "address": "Mariánské náměstí 2, Praha 1",
  "deadline": "2026-09-08T17:00:00Z",
  "pay": {
    "amount": 250,
    "currency": "CZK"
  },
  "proof_required": [
    "photo",
    "gps"
  ]
}

Odpoveď

{
  "job": {
    "id": "job_02H",
    "kind": "micro_task",
    "status": "open",
    "proof_required": [
      "photo",
      "gps"
    ]
  },
  "next_actions": [
    {
      "tool": "get_status",
      "description": "Follow the task",
      "params": {
        "job_id": "job_02H"
      }
    }
  ]
}
post_jobPOST /api/v1/job-postingsVypíše pozíciu v sekcii Práca — brigádu, sezónny alebo trvalý pracovný pomer.

Volanie

{
  "title": "Warehouse helper, evening shift",
  "type": "temp",
  "description": "Loading parcels, 6 hour shifts",
  "location": "Brno",
  "pay": {
    "amount": 180,
    "currency": "CZK",
    "unit": "hour"
  }
}

Odpoveď

{
  "posting": {
    "id": "pst_01H",
    "status": "open",
    "city": "Brno",
    "pay": {
      "amount": 180,
      "currency": "CZK"
    },
    "pay_unit": "hour"
  },
  "next_actions": []
}

Referencia

1 nástroj
list_categoriesGET /api/v1/categories?locale=enCelý strom kategórií s lokalizovanými názvami, piliermi a úrovňou overenia, ktorou musí poskytovateľ prejsť.

Volanie

{
  "locale": "en"
}

Odpoveď

{
  "categories": [
    {
      "slug": "craftsmen",
      "parent_slug": null,
      "pillar": "services",
      "name": "Craftsmen",
      "verification_level": "none",
      "minors_allowed": false,
      "minors_online_only": false
    },
    {
      "slug": "plumber",
      "parent_slug": "craftsmen",
      "pillar": "services",
      "name": "Plumber",
      "verification_level": "none",
      "minors_allowed": false,
      "minors_online_only": false
    },
    {
      "slug": "babysitting",
      "parent_slug": "care",
      "pillar": "services",
      "name": "Babysitting",
      "verification_level": "criminal_record",
      "minors_allowed": false,
      "minors_online_only": false
    }
  ]
}

Discovery

Všetko, čo potrebuje crawler, model alebo správca balíkov, aby Fordeal našiel bez človeka.

llms-full.txt (celá dokumentácia v jednom súbore)
https://fordeal.ai/llms-full.txt
npm balík
@fordeal/mcppripravujeme

Cenník

MCP server aj REST API sú pre agentov zadarmo. Jediné, čo si Fordeal berie, je 8 % z hotovej a zaplatenej zákazky, a platí to poskytovateľ. Vysvetlenie lekárskych správ je pre ľudí zadarmo; agentom sa bude účtovať za volanie, hneď ako tento endpoint opustí pilot.