API റഫറൻസ്
എല്ലാ രീതികളും JSON-RPC 2.0 ഉപയോഗിച്ച് https://www.magisterium.com/api/v1/a2a-ലേക്ക് POST വഴി വിളിക്കുന്നു. ഓരോ അഭ്യർത്ഥനയിലും Authorization: Bearer $MAGISTERIUM_TOKEN (OAuth വഴി നൽകുന്ന ഉപയോക്തൃ ടോക്കൺ — പ്രാമാണീകരണം കാണുക) ഉം Content-Type: application/json ഉം ഉൾപ്പെടുത്തണം.
രീതികൾ
message/send
ഒരു കഴിവിലേക്ക് ഒരു സന്ദേശം അയയ്ക്കുകയും പൂർത്തിയാക്കിയ ടാസ്ക് സ്വീകരിക്കുകയും ചെയ്യുക. എല്ലാ Magisterium കഴിവുകളും സിൻക്രണസ് ആണ് — പ്രതികരണത്തിൽ ടെർമിനൽ ടാസ്ക് അവസ്ഥ (completed അല്ലെങ്കിൽ failed) അടങ്ങിയിരിക്കുന്നു, ഒരിക്കലും ഒരു ഇന്റർമീഡിയറ്റ് working സ്റ്റാറ്റസ് ഇല്ല.
Params:
| ഫീൽഡ് | തരം | ആവശ്യമാണ് | വിവരണം |
|---|---|---|---|
message | Message | അതെ | ഭാഗങ്ങളും ഓപ്ഷണൽ metadata-യും ഉള്ള ഉപയോക്തൃ സന്ദേശം. |
message.role | string | അതെ | "user" ആയിരിക്കണം. |
message.messageId | string | അതെ | ഈ സന്ദേശത്തിനുള്ള അദ്വിതീയ ID. |
message.kind | string | അതെ | "message" ആയിരിക്കണം. |
message.parts | Part[] | അതെ | കുറഞ്ഞത് ഒരു ഭാഗം (ടെക്സ്റ്റ് അല്ലെങ്കിൽ ഡാറ്റ). |
message.metadata.skillId | string | ഇല്ല | ആഹ്വാനം ചെയ്യേണ്ട കഴിവ്. ഡിഫോൾട്ട് catholic_qa. |
message.contextId | string | ഇല്ല | ബന്ധപ്പെട്ട ടാസ്ക്കുകൾ ഗ്രൂപ്പുചെയ്യുന്നതിനുള്ള ഓപ്ഷണൽ സന്ദർഭ ID. ഒഴിവാക്കിയാൽ, സെർവർ ഒന്ന് സൃഷ്ടിക്കുന്നു. |
configuration | object | ഇല്ല | ഭാവി ഉപയോഗത്തിനായി നീക്കിവച്ചു. |
തിരികെ നൽകുന്നു: kind: "task" ഉള്ള ഒരു Task ഒബ്ജക്റ്റ്.
tasks/get
മുമ്പ് സൃഷ്ടിച്ച ടാസ്ക് അതിന്റെ ID പ്രകാരം വീണ്ടെടുക്കുക.
Params:
| ഫീൽഡ് | തരം | ആവശ്യമാണ് | വിവരണം |
|---|---|---|---|
id | string | അതെ | message/send-ൽ നിന്ന് തിരികെ നൽകിയ ടാസ്ക് ID. |
തിരികെ നൽകുന്നു: Task ഒബ്ജക്റ്റ്, അല്ലെങ്കിൽ കാലഹരണപ്പെടുകയോ കാണാതിരിക്കുകയോ ചെയ്താൽ TASK_NOT_FOUND പിശക്. ടാസ്ക്കുകൾ 24 മണിക്കൂർ സംഭരിക്കുന്നു.
tasks/cancel
ഒരു ടാസ്ക് റദ്ദാക്കാവുന്ന അവസ്ഥയിലാണെങ്കിൽ അത് റദ്ദാക്കുക. എല്ലാ കഴിവുകളും സിൻക്രണസ് ആയി പരിഹരിക്കപ്പെടുന്നതിനാൽ, പ്രതികരണം തിരിച്ചുവരുന്ന സമയമാകുമ്പോൾ മിക്ക ടാസ്ക്കുകളും ഇതിനകം ടെർമിനൽ അവസ്ഥയിലാണ് (completed / failed) — ഒരു ടെർമിനൽ ടാസ്ക് റദ്ദാക്കാൻ ശ്രമിക്കുന്നത് Invalid state transition സന്ദേശത്തോടെ INVALID_PARAMS തിരികെ നൽകുന്നു.
Params:
| ഫീൽഡ് | തരം | ആവശ്യമാണ് | വിവരണം |
|---|---|---|---|
id | string | അതെ | റദ്ദാക്കേണ്ട ടാസ്ക് ID. |
തിരികെ നൽകുന്നു: status.state: "canceled" ഉള്ള പുതുക്കിയ Task ഒബ്ജക്റ്റ്.
ടാസ്ക് ജീവിതചക്രം
Magisterium-ന്റെ കഴിവുകൾ സിൻക്രണസ് ആയി പ്രവർത്തിക്കുന്നു, അതിനാൽ കഴിവ് പൂർത്തിയായതിന് ശേഷം മാത്രമേ ടാസ്ക് സംഭരണത്തിൽ സൂക്ഷിക്കപ്പെടുകയുള്ളൂ — എപ്പോഴും ഒരു ടെർമിനൽ അവസ്ഥയിൽ. submitted, working അവസ്ഥകൾ വിശാലമായ A2A സ്പെസിഫിക്കേഷന്റെ ഭാഗമാണെങ്കിലും Magisterium-ന്റെ നടപ്പാക്കൽ ഇവയെ ഒരിക്കലും ഉൽപ്പാദിപ്പിക്കുന്നില്ല; താഴെയുള്ള മൂന്ന് ടെർമിനൽ അവസ്ഥകളിൽ ഒന്ന് മാത്രമേ നിങ്ങൾക്ക് കാണാൻ കഴിയൂ.
| അവസ്ഥ | അർത്ഥം |
|---|---|
completed | ടെർമിനൽ — ഫലങ്ങൾ artifacts-ൽ ഉണ്ട്. കഴിവ് വിജയകരമായി പൂർത്തിയാകുമ്പോൾ message/send തിരികെ നൽകുന്നു. |
failed | ടെർമിനൽ — status.message-ൽ പരാജയ കാരണം അടങ്ങിയിരിക്കുന്നു. കഴിവ് ഒരു അപവാദം എറിയുമ്പോൾ message/send തിരികെ നൽകുന്നു. |
canceled | ടെർമിനൽ — ടെർമിനൽ അല്ലാത്ത ഒരു ടാസ്ക്കിൽ tasks/cancel വിളിച്ചാൽ മാത്രമേ എത്തിച്ചേരാനാകൂ. message/send തിരികെ വരുമ്പോഴേക്കും ടാസ്ക്കുകൾ ഇതിനകം ടെർമിനൽ ആയിരിക്കുന്നതിനാൽ, പ്രായോഗികമായി നിങ്ങൾക്ക് ഹാൻഡിൽ ഉള്ള ഏതൊരു ടാസ്ക്കിനും റദ്ദാക്കൽ INVALID_PARAMS-ഓടെ നിരസിക്കപ്പെടുന്നു. |
ഓരോ ടാസ്ക്കും വഹിക്കുന്നു:
contextId— ബന്ധപ്പെട്ട ടാസ്ക്കുകൾ ലിങ്ക് ചെയ്യാൻ ഫോളോ-അപ്പ് സന്ദേശങ്ങളിൽ പുനരുപയോഗിക്കാവുന്ന ഗ്രൂപ്പിംഗ് ഐഡന്റിഫയർ.history— ടാസ്ക്കിന്റെ ആർട്ടിഫാക്റ്റുകൾ ഉത്പാദിപ്പിച്ച ഉപയോക്തൃ-ഏജന്റ് സന്ദേശങ്ങളുടെ ക്രമീകരിച്ച പട്ടിക.
പിശക് കോഡുകൾ
| കോഡ് | പേര് | വിവരണം |
|---|---|---|
-32700 | Parse error | അസാധുവായ JSON ബോഡി. |
-32600 | Invalid request | jsonrpc, method, അല്ലെങ്കിൽ id ഫീൽഡുകൾ നഷ്ടമായി. |
-32601 | Method not found | അജ്ഞാത JSON-RPC രീതി. |
-32602 | Invalid params | നഷ്ടമായതോ അസാധുവായതോ ആയ പാരാമീറ്ററുകൾ (അസാധുവായ tasks/cancel അവസ്ഥാ മാറ്റങ്ങൾക്കും തിരികെ നൽകുന്നു). |
-32603 | Internal error | അപ്രതീക്ഷിത സെർവർ-സൈഡ് പരാജയം. |
-32001 | Task not found | ടാസ്ക് ID നിലവിലില്ല അല്ലെങ്കിൽ കാലഹരണപ്പെട്ടു. |
-32002 | Skill not found | സന്ദേശ metadata-യിൽ അജ്ഞാത skillId. |
-32003 | Rate limit exceeded | വളരെയധികം അഭ്യർത്ഥനകൾ. പിശകിന്റെ data-യിൽ retryAfter (സെക്കൻഡ്) പരിശോധിക്കുക. |
-32004 | Unauthorized | നഷ്ടമായതോ അസാധുവായതോ ആയ Bearer ടോക്കൺ. |
-32005 | Paid plan required | A2A-യ്ക്ക് Pro, Organization, അല്ലെങ്കിൽ Enterprise പ്ലാൻ ആവശ്യമാണ്. |
HTTP സ്റ്റാറ്റസ് പിശക് ക്ലാസിനെ പ്രതിഫലിപ്പിക്കുന്നു: UNAUTHORIZED-ന് 401, PLAN_REQUIRED-ന് 403, RATE_LIMITED-ന് 429, മറ്റ് എല്ലാ JSON-RPC പിശകുകൾക്കും 200 (JSON-RPC കൺവെൻഷൻ പ്രകാരം error ബോഡിയുമായി 200 തിരികെ നൽകുന്നു).
റേറ്റ് പരിധികൾ
A2A MCP-യുമായി അതേ റേറ്റ്-ലിമിറ്റ് പൂൾ പങ്കിടുന്നു — ഓരോ-പ്ലാൻ അഭ്യർത്ഥന പരിധികൾക്കായി MCP വിലനിർണയം കാണുക.
രണ്ട് വേരിയന്റുകൾ നടപ്പിലാക്കുന്നു:
- ഡിഫോൾട്ട് —
document_search,document_fetch,liturgical_readings,saints_of_the_dayഎന്നിവയ്ക്ക് ബാധകമാണ്. - വിലകൂടിയത് —
catholic_qa-യ്ക്ക് മാത്രം ബാധകമാണ്, കാരണം അത് LLM-പിന്തുണയുള്ള ഉത്തര പൈപ്ലൈൻ പ്രവർത്തിപ്പിക്കുന്നു. ഈ വേരിയന്റ് കർശനവും കുറഞ്ഞതുമായ പരിധി ഉപയോഗിക്കുന്നു.
നിങ്ങൾ ഒരു പരിധിയിലെത്തുമ്പോൾ, പിശകിന്റെ data ഒബ്ജക്റ്റിൽ സെക്കൻഡിൽ retryAfter അടങ്ങിയിരിക്കുന്നു. കോളർമാർ വീണ്ടും ശ്രമിക്കുന്നതിനുമുമ്പ് ആ ഇടവേളയ്ക്കായി പിന്മാറണം.
CORS
എൻഡ്പോയിന്റ് OPTIONS പ്രിഫ്ലൈറ്റ് അഭ്യർത്ഥനകൾക്ക് പ്രതികരിക്കുകയും അനുമതികരമായ CORS ഹെഡറുകൾ തിരികെ നൽകുകയും ചെയ്യുന്നു (Access-Control-Allow-Origin: *, Allow-Methods: POST, OPTIONS, Allow-Headers: Content-Type, Authorization), അതിനാൽ A2A ഒരു പ്രോക്സിയില്ലാതെ ബ്രൗസർ-അടിസ്ഥാന ഓർക്കസ്ട്രേറ്ററുകളിൽ നിന്ന് വിളിക്കാം.