● healthy
Claix turns unstructured documents into typed JSON and queryable memory for AI agents. Extract PDF, Excel, Word, images, and text; ask persisted documents by document_id; reason across a knowledge space with space_id.
Transport
—
Protocol
0.3
Price
—
Skills
-
Convert an Excel or CSV file to JSON using a schemaConvert an Excel or CSV file to JSON using a schema. Accepts an .xlsx or .csv file and a schema_id, and returns transformed JSON whose keys match the schema properties exactly. If the workbook has multiple sheets, only the first sheet is processed. Max file size follows the REST /excel-json limits. A2A skill id: extract-excel. REST: POST /excel-json. JSON DataPart must include "skill": "extract-excel". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. multipart/form-data equivalent: schema_id + file_base64 or file_path in the DataPart JSON. Optional space_id groups the persisted document. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.extractexcelcsvjson
-
Convert JSON documents to an Excel fileConvert JSON documents to an Excel file. Accepts JSON data and a schema_id, and returns a binary .xlsx whose columns follow the schema order and names. In A2A send schema_id plus data (array or object). Aliases records and json_data are normalized to data. A2A skill id: convert-json-to-excel. REST: POST /json-excel. JSON DataPart must include "skill": "convert-json-to-excel". Required A2A parameters: skill. Body JSON fields: schema_id, data. JSON body: schema_id (required) and data (array or object). Aliases records/json_data also map to data. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.convertexceljson
-
Extract structured data from a PDF using a schemaExtract structured data from a PDF using a schema. Accepts a .pdf (selectable text or scanned) and a schema_id, and returns a single JSON object for the whole document. Response data always contains exactly one record. Max file size: 15 MB. A2A skill id: extract-pdf. REST: POST /pdf-json. JSON DataPart must include "skill": "extract-pdf". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. schema_id + file_base64 or file_path in the DataPart JSON. Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.extractpdfjson
-
Extract structured data from a text document using a schemaExtract structured data from a text document using a schema. Accepts .docx, .txt, .md, or .rtf plus a schema_id, and returns a single JSON object for the whole document. Legacy .doc (Word 97-2003) is not supported. Max file size: 10 MB; extracted text max 300,000 characters. A2A skill id: extract-doc. REST: POST /doc-json. JSON DataPart must include "skill": "extract-doc". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. schema_id + file_base64 or file_path (.docx, .txt, .md, .rtf). Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.extractdocxjson
-
Extract structured data from an image using a schemaExtract structured data from an image using a schema. Accepts .jpeg, .jpg, .png, .webp, .heic, or .heif plus a schema_id, and returns a single JSON object from the visible content. Unreadable images return HTTP 422. Max file size: 15 MB. A2A skill id: extract-img. REST: POST /img-json. JSON DataPart must include "skill": "extract-img". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. schema_id + file_base64 or file_path (.jpeg, .png, .webp, .heic). Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.extractimagejson
-
Extract structured data from plain text, HTML, or XML using a schemaExtract structured data from plain text, HTML, or XML using a schema. Accepts a content string (plain text, HTML, or XML) and a txt-json schema_id. No file upload. Max 300,000 characters. A2A skill id: extract-txt. REST: POST /txt-json. JSON DataPart must include "skill": "extract-txt". Required A2A parameters: skill, content, schema_id. Form/DataPart fields: schema_id, content, space_id. schema_id + content (plain text/HTML/XML string, not a file). Optional space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.extracttexthtmlxml
-
Return the raw content of a persisted documentReturn the raw content of a persisted document. Read-only. document_id is a path parameter only (no body). Returns markdown/text and metadata for a document created by an extraction with window_context enabled. Free call. A2A skill id: get-document. REST: GET /get-document/{document_id}. JSON DataPart must include "skill": "get-document". Required A2A parameters: skill, document_id. Path params: document_id. document_id is a path parameter only. No body and no questions. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.contextdocument
-
Answer questions about a persisted documentAnswer questions about a persisted document. document_id goes in the URL path. questions (1–5 strings, max 400 chars each) go in the JSON body only — never embed document_id inside a question. Returns { user_ask, ia_response } aligned 1:1; ia_response items are null when the answer is not in the document. A2A skill id: query-document. REST: POST /document-context/{document_id}. JSON DataPart must include "skill": "query-document". Required A2A parameters: skill, document_id, questions. Path params: document_id. Body JSON fields: questions. document_id goes in the URL path. questions[] (1–5 strings, max 400 chars each) goes in the JSON body only — never inside the question text. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.contextqadocument
-
Answer questions across every document in a knowledge spaceAnswer questions across every document in a knowledge space. space_id goes in the URL path. questions (1–5 strings, max 400 chars each) go in the JSON body only — never embed space_id inside a question. Cross-references up to 50 active documents in the space. Returns { user_ask, ia_response }; null means no evidence in any document. A2A skill id: query-space. REST: POST /space-context/{space_id}. JSON DataPart must include "skill": "query-space". Required A2A parameters: skill, space_id, questions. Path params: space_id. Body JSON fields: questions. space_id goes in the URL path. questions[] (1–5 strings, max 400 chars each) goes in the JSON body only — never inside the question text. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.contextqaspace
-
Create a knowledge space for the API key accountCreate a knowledge space for the API key account. Creates an empty knowledge space. Required JSON body field: name (max 200 chars). Returns space_id for use as optional space_id on extractions and for query-space. Free call. A2A skill id: create-space. REST: POST /create-space. JSON DataPart must include "skill": "create-space". Required A2A parameters: skill, name. Body JSON fields: name. JSON body with name (string, max 200 chars). Returns space_id. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.spaces
-
Delete a knowledge spaceDelete a knowledge space. space_id is a path parameter only (no body). Deletes the space owned by the API key account. Free call. A2A skill id: delete-space. REST: DELETE /delete-space/{space_id}. JSON DataPart must include "skill": "delete-space". Required A2A parameters: skill, space_id. Path params: space_id. space_id is a path parameter only. No body. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.spaces
-
Delete a persisted documentDelete a persisted document. document_id is a path parameter only (no body). Deletes the document owned by the API key account. Free call. A2A skill id: delete-document. REST: DELETE /delete-document/{document_id}. JSON DataPart must include "skill": "delete-document". Required A2A parameters: skill, document_id. Path params: document_id. document_id is a path parameter only. No body. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.contextdocument
-
Excel/CSV to JSON with Agent Mode reasoningExcel/CSV to JSON with Agent Mode reasoning. Same inputs as extract-excel, but the schema must have is_agent_mode enabled. Returns extraction data plus agent_data from agent_definition. A2A skill id: agent-extract-excel. REST: POST /agent/excel-json. JSON DataPart must include "skill": "agent-extract-excel". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-excel but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.agentexcel
-
PDF to JSON with Agent Mode reasoningPDF to JSON with Agent Mode reasoning. Same inputs as extract-pdf, but the schema must have is_agent_mode enabled. Returns data[] plus typed agent_data. Max PDF size: 15 MB. A2A skill id: agent-extract-pdf. REST: POST /agent/pdf-json. JSON DataPart must include "skill": "agent-extract-pdf". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-pdf but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.agentpdf
-
Document to JSON with Agent Mode reasoningDocument to JSON with Agent Mode reasoning. Same inputs as extract-doc, but the schema must have is_agent_mode enabled. Formats: .docx, .txt, .md, .rtf. A2A skill id: agent-extract-doc. REST: POST /agent/doc-json. JSON DataPart must include "skill": "agent-extract-doc". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-doc but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.agentdocx
-
Image to JSON with Agent Mode reasoningImage to JSON with Agent Mode reasoning. Same inputs as extract-img, but the schema must have is_agent_mode enabled. Formats: JPEG, PNG, WebP, HEIC/HEIF. A2A skill id: agent-extract-img. REST: POST /agent/img-json. JSON DataPart must include "skill": "agent-extract-img". Required A2A parameters: skill, schema_id. Form/DataPart fields: schema_id, file_base64, file_path, filename, space_id. Same as extract-img but schema must have is_agent_mode. schema_id + file_base64 or file_path. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.agentimage
-
Text/HTML/XML to JSON with Agent Mode reasoningText/HTML/XML to JSON with Agent Mode reasoning. Same inputs as extract-txt, but the schema must have is_agent_mode enabled. content string + schema_id; returns data[] and agent_data. A2A skill id: agent-extract-txt. REST: POST /agent/txt-json. JSON DataPart must include "skill": "agent-extract-txt". Required A2A parameters: skill, content, schema_id. Form/DataPart fields: schema_id, content, space_id. Same as extract-txt but schema must have is_agent_mode. schema_id + content string. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.agenttext
-
List every schema for the API key accountList every schema for the API key account. No parameters. Returns all schemas owned by the API key account (id, name, type, definition), newest first. Free call. A2A skill id: list-schemas. REST: GET /schemas. JSON DataPart must include "skill": "list-schemas". Required A2A parameters: skill. No parameters. Returns every schema in the account. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.schemas
-
Create a schema for the API key accountCreate a schema for the API key account. JSON body: name, type (excel-json | json-excel | pdf-json | doc-json | img-json | txt-json), and schema_definition (object). Optional is_agent_mode, agent_definition, resumen_agent, window_context, window_time. Free call. A2A skill id: create-schema. REST: POST /create-schema. JSON DataPart must include "skill": "create-schema". Required A2A parameters: skill, name, type, schema_definition. Body JSON fields: name, type, schema_definition, is_agent_mode, agent_definition, resumen_agent, window_context, window_time. JSON body: name, type (excel-json|pdf-json|doc-json|img-json|txt-json|json-excel), schema_definition (object). Optional is_agent_mode, agent_definition, window_context, window_time. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.schemas
-
Delete a schema from the API key accountDelete a schema from the API key account. JSON body with schema_id (UUID). Deletes the schema if it belongs to the API key account. Free call. A2A skill id: delete-schema. REST: POST /delete-schema. JSON DataPart must include "skill": "delete-schema". Required A2A parameters: skill, schema_id. Body JSON fields: schema_id. JSON body with schema_id (UUID). Query ?schema_id= also accepted by REST. Use snake_case names exactly. OpenAPI multipart `file` → file_base64 or file_path in A2A JSON.schemas
How to call
A2A endpoint (JSONRPC)
https://www.claix.dev/a2a
Agent card
https://claix.dev/.well-known/agent.json
Documentation
https://www.claix.dev/documentation
Homepage
https://www.claix.dev/
Listed in
Directories this entry was found in.
a2aregistry
agenstry