DocuPipe · Schema
Document
Public-facing representation of DocuPipeDocument.
Artificial IntelligenceDocument ExtractionDocument IntelligenceIntelligent Document ProcessingOCRDocument AI
Properties
| Name | Type | Description |
|---|---|---|
| documentId | string | Unique identifier of the document. |
| dataset | string | Name of the dataset to which the document belongs. |
| classified | boolean | Whether the document has been classified. |
| classIds | array | List of class IDs assigned to the document. If classified is False, this will be None. |
| filename | string | Name of the document file. |
| fileType | object | Type of the document file. |
| fileExtension | object | Extension of the document file. |
| originalFileExtension | object | extension of the originally uploaded file, before any conversion (e.g. html, docx). none if no conversion occurred. |
| fileSizeMb | number | Size of the stored document file in MB. |
| result | object | Result of the document analysis if completed. |
| numPages | integer | Number of pages in the document. |
| language | string | Dominant language of the document. |
| metadata | object | Metadata associated with the document. This is a user-defined dictionary that can have any properties. |
| status | object | Current status of the document processing (deprecated, will be removed in future versions). |
| parentDocumentId | string | Unique identifier of the parent document, if this document was created by splitting another document. |
| parentDocumentPages | array | List of page numbers from the parent document that make up this document (zero indexed). |
| timestamp | string | Timestamp of the document creation. |
| transformedData | object | Output of the transformation chain applied to this structured document (csv, xlsx, xls, json or xml), if any. Returned when fetching a single document; null in document lists. |
| transformationIds | array | Ordered transformations that produced transformedData. |
| transformationReceipt | object | Hashes identifying the input, code, context and output of the applied transformation chain. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/docupanda/main/json-schema/docupanda-document-schema.json",
"title": "Document",
"description": "Public-facing representation of DocuPipeDocument.",
"x-generated": "2026-10-14",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/docupanda-docupipe-openapi.yml#/components/schemas/Document",
"properties": {
"documentId": {
"type": "string",
"title": "Document ID",
"description": "Unique identifier of the document."
},
"dataset": {
"type": "string",
"title": "Dataset",
"description": "Name of the dataset to which the document belongs."
},
"classified": {
"type": "boolean",
"title": "Classified",
"description": "Whether the document has been classified.",
"default": false
},
"classIds": {
"items": {
"type": "string"
},
"type": "array",
"title": "Class IDs",
"description": "List of class IDs assigned to the document. If classified is False, this will be None."
},
"filename": {
"type": "string",
"title": "Document filename",
"description": "Name of the document file."
},
"fileType": {
"$ref": "#/$defs/FileType",
"title": "File Type",
"description": "Type of the document file."
},
"fileExtension": {
"$ref": "#/$defs/FileExtension",
"title": "File Extension",
"description": "Extension of the document file."
},
"originalFileExtension": {
"$ref": "#/$defs/FileExtension",
"title": "Original File Extension",
"description": "extension of the originally uploaded file, before any conversion (e.g. html, docx). none if no conversion occurred."
},
"fileSizeMb": {
"type": "number",
"title": "File Size",
"description": "Size of the stored document file in MB."
},
"result": {
"$ref": "#/$defs/ParsingResults",
"title": "Analysis Result",
"description": "Result of the document analysis if completed."
},
"numPages": {
"type": "integer",
"title": "Number of Pages",
"description": "Number of pages in the document."
},
"language": {
"type": "string",
"title": "Language",
"description": "Dominant language of the document."
},
"metadata": {
"additionalProperties": true,
"type": "object",
"title": "Metadata",
"description": "Metadata associated with the document. This is a user-defined dictionary that can have any properties."
},
"status": {
"$ref": "#/$defs/ProcessingStatus",
"title": "Processing Status",
"description": "Current status of the document processing (deprecated, will be removed in future versions)."
},
"parentDocumentId": {
"type": "string",
"title": "Parent Document ID",
"description": "Unique identifier of the parent document, if this document was created by splitting another document."
},
"parentDocumentPages": {
"items": {
"type": "integer"
},
"type": "array",
"title": "Parent Document Pages",
"description": "List of page numbers from the parent document that make up this document (zero indexed)."
},
"timestamp": {
"type": "string",
"title": "Timestamp",
"description": "Timestamp of the document creation."
},
"transformedData": {
"title": "Transformed Data",
"description": "Output of the transformation chain applied to this structured document (csv, xlsx, xls, json or xml), if any. Returned when fetching a single document; null in document lists."
},
"transformationIds": {
"items": {
"type": "string"
},
"type": "array",
"title": "Transformation IDs",
"description": "Ordered transformations that produced transformedData."
},
"transformationReceipt": {
"additionalProperties": true,
"type": "object",
"title": "Transformation Receipt",
"description": "Hashes identifying the input, code, context and output of the applied transformation chain."
}
},
"type": "object",
"required": [
"documentId"
],
"$defs": {
"AnalyzedPage": {
"properties": {
"sections": {
"items": {
"$ref": "#/$defs/Section"
},
"type": "array",
"title": "Sections",
"description": "A list of parsed sections in the page.",
"default": []
},
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Text",
"description": "The text content of the page - a concatenation of the text in all sections."
},
"pageNum": {
"type": "integer",
"title": "Page Number",
"description": "The number of this page in document (zero indexed).",
"default": 0
},
"orientation": {
"$ref": "#/$defs/Orientation",
"description": "Orientation of the page.",
"default": "normal"
}
},
"type": "object",
"title": "AnalyzedPage",
"description": "Public-facing representation of DocuPipeAnalyzedPage."
},
"FileExtension": {
"type": "string",
"enum": [
"pdf",
"png",
"jpeg",
"webp",
"tiff",
"jp2",
"txt",
"json",
"xml",
"html",
"doc",
"docx",
"csv",
"xlsx",
"xls",
"eml"
],
"title": "FileExtension"
},
"FileType": {
"type": "string",
"enum": [
"pdf",
"image",
"text",
"json",
"html",
"word",
"table"
],
"title": "FileType"
},
"HeaderType": {
"type": "string",
"enum": [
"paragraph",
"h1",
"h2",
"h3",
"h4",
"h5",
"h6"
],
"title": "HeaderType"
},
"Orientation": {
"type": "string",
"enum": [
"normal",
"clockwise",
"counter_clockwise",
"upside_down"
],
"title": "Orientation"
},
"ParsingResults": {
"properties": {
"pages": {
"items": {
"$ref": "#/$defs/AnalyzedPage"
},
"type": "array",
"title": "Pages",
"description": "A list of parsed pages in the document.",
"default": []
},
"numPages": {
"type": "integer",
"title": "Number of Pages",
"description": "The number of pages in the document.",
"default": 0
},
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Text",
"description": "The text content of the document."
},
"language": {
"type": "string",
"title": "Language",
"description": "The dominant language of the document."
}
},
"type": "object",
"title": "ParsingResults"
},
"ProcessingStatus": {
"type": "string",
"enum": [
"processing",
"completed",
"error"
],
"title": "ProcessingStatus"
},
"Section": {
"properties": {
"type": {
"$ref": "#/$defs/SectionType",
"title": "Type",
"description": "The type of the section (text, table, image)"
},
"text": {
"type": "string",
"title": "Text",
"description": "The text content of the section"
},
"bbox": {
"items": {
"type": "number"
},
"type": "array",
"title": "Bounding Box",
"description": "Bounding box of the section in the format [x1, y1, x2, y2], in percentage units [0, 1] within the page"
},
"header": {
"$ref": "#/$defs/HeaderType",
"title": "Header Type",
"description": "For text sections, the type of header: paragraph (default), h1 - h6"
},
"tableList": {
"items": {
"items": {
"type": "string"
},
"type": "array"
},
"type": "array",
"title": "Table List",
"description": "For table sections, a list of lists representing the table. The outer list represents rows, the inner lists represent column values in those rows. The first row is the header.If there is no header, the first row is a list of empty strings."
}
},
"type": "object",
"required": [
"type",
"text",
"bbox"
],
"title": "Section"
},
"SectionType": {
"type": "string",
"enum": [
"text",
"table",
"image"
],
"title": "SectionType"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/docupanda-document"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.