Magisterium AI

API referencia

Minden metódus POST kéréssel hívható a https://www.magisterium.com/api/v1/a2a címen JSON-RPC 2.0 használatával. Minden kérésnek tartalmaznia kell az Authorization: Bearer $MAGISTERIUM_TOKEN (OAuth által kibocsátott felhasználói token — lásd Hitelesítés) és Content-Type: application/json fejléceket.

Metódusok

message/send

Küldjön üzenetet egy képességnek, és kapjon befejezett feladatot. Minden Magisterium képesség szinkron — a válasz a feladat terminális állapotát tartalmazza (completed vagy failed), soha nem a közbenső working állapotot.

Paraméterek:

MezőTípusKötelezőLeírás
messageMessageIgenA felhasználói üzenet részekkel és opcionális metaadatokkal.
message.rolestringIgen"user" értékűnek kell lennie.
message.messageIdstringIgenAz üzenet egyedi azonosítója.
message.kindstringIgen"message" értékűnek kell lennie.
message.partsPart[]IgenLegalább egy rész (text vagy data).
message.metadata.skillIdstringNemA meghívandó képesség. Alapértelmezett: catholic_qa.
message.contextIdstringNemOpcionális kontextus-azonosító kapcsolódó feladatok csoportosításához. Ha kimarad, a szerver generál egyet.
configurationobjectNemJövőbeli használatra fenntartva.

Visszaad: egy Task objektumot kind: "task" értékkel.

tasks/get

Korábban létrehozott feladat lekérése az azonosítója alapján.

Paraméterek:

MezőTípusKötelezőLeírás
idstringIgenA message/send-ből visszakapott feladatazonosító.

Visszaad: A Task objektumot, vagy TASK_NOT_FOUND hibát, ha a feladat lejárt vagy hiányzik. A feladatokat 24 órán át tároljuk.

tasks/cancel

Szakítson meg egy feladatot, ha megszakítható állapotban van. Mivel minden képesség szinkron módon zárul, a válasz visszatérésének pillanatában a feladatok nagy része már terminális állapotban van (completed / failed) — egy terminális feladat megszakításának kísérlete INVALID_PARAMS hibát ad vissza Invalid state transition üzenettel.

Paraméterek:

MezőTípusKötelezőLeírás
idstringIgenA megszakítandó feladat azonosítója.

Visszaad: A frissített Task objektumot status.state: "canceled" értékkel.

Feladat életciklus

A Magisterium képességei szinkron módon futnak, ezért a feladat csak a képesség befejezése után kerül a tárolóba — mindig terminális állapotban. A submitted és working állapotok a tágabb A2A specifikáció részei, de a Magisterium implementációja soha nem hozza létre őket; mindig csak az alábbi három terminális állapot egyikét fogja megfigyelni.

ÁllapotJelentés
completedTerminális — az eredmények az artifacts mezőben vannak. A message/send adja vissza, amikor a képesség sikeresen befejeződik.
failedTerminális — a status.message tartalmazza a hiba okát. A message/send adja vissza, amikor a képesség kivételt dob.
canceledTerminális — csak úgy érhető el, ha a tasks/cancel-t hívja egy nem terminális feladaton. Mivel a feladatok már terminális állapotban vannak, mire a message/send visszatér, a gyakorlatban a megszakítást INVALID_PARAMS hibával utasítja vissza minden olyan feladat esetén, amelyre hivatkozása van.

Minden feladat tartalmazza továbbá:

  • contextId — csoportosítási azonosító, amelyet újrahasználhat követő üzeneteiben a kapcsolódó feladatok összekapcsolására.
  • history — a felhasználói és ügynöki üzenetek rendezett listája, amelyek a feladat artefaktumait eredményezték.

Hibakódok

KódNévLeírás
-32700Parse errorÉrvénytelen JSON törzs.
-32600Invalid requestHiányzó jsonrpc, method vagy id mezők.
-32601Method not foundIsmeretlen JSON-RPC metódus.
-32602Invalid paramsHiányzó vagy érvénytelen paraméterek (érvénytelen tasks/cancel állapotátmeneteknél is visszaadható).
-32603Internal errorVáratlan szerveroldali hiba.
-32001Task not foundA feladat azonosítója nem létezik vagy lejárt.
-32002Skill not foundIsmeretlen skillId az üzenet metaadataiban.
-32003Rate limit exceededTúl sok kérés. Ellenőrizze a retryAfter (másodperc) értéket a hiba data mezőjében.
-32004UnauthorizedHiányzó vagy érvénytelen Bearer token.
-32005Paid plan requiredAz A2A Pro, Organization vagy Enterprise csomagot igényel.

Az HTTP státusz tükrözi a hibaosztályt: 401 UNAUTHORIZED esetén, 403 PLAN_REQUIRED esetén, 429 RATE_LIMITED esetén, és 200 minden más JSON-RPC hiba esetén (a JSON-RPC konvenció szerint, amely 200-at ad vissza error törzzsel).

Kérési korlátok

Az A2A ugyanazt a kéréskorlát-készletet használja, mint az MCP — lásd az MCP Árazás oldalt a csomagonkénti kéréskorlátokért.

Két változat van érvényben:

  • Default — a document_search, document_fetch, liturgical_readings és saints_of_the_day képességekre vonatkozik.
  • Expensive — kizárólag a catholic_qa-ra vonatkozik, mivel az LLM-alapú válasz-pipelinet futtat. Ez a változat szigorúbb, alacsonyabb plafont használ.

Ha eléri a korlátot, a hiba data objektuma retryAfter értéket tartalmaz másodpercben. A hívóknak ennek az intervallumnak megfelelően vissza kell vonulniuk az újrapróbálkozás előtt.

CORS

A végpont válaszol az OPTIONS preflight kérésekre és megengedő CORS fejléceket ad vissza (Access-Control-Allow-Origin: *, Allow-Methods: POST, OPTIONS, Allow-Headers: Content-Type, Authorization), így az A2A meghívható böngészőalapú orkesztrátorokból proxy nélkül.