DocuPipe Analysis API

The Analysis API from DocuPipe — 4 operation(s) for analysis.

Operations 5

GET /analyses List Analyses #
DELETE /analyses Delete Multiple Analyses #
GET /analysis/{analysis_id} Retrieve Analysis #
POST /analyze/data Analyze Data #
POST /analyze/document Analyze Document #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/docupanda:docupanda-analysis-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

docupanda-analysis-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DocuPipe Analysis API
  version: '1.0'
servers:
- url: https://app.docupipe.ai
tags:
- name: Analysis
paths:
  /analyses:
    get:
      summary: List Analyses
      operationId: list_analyses
      security:
      - APIKeyHeader: []
      - HTTPBearer: []
      parameters:
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          description: The maximum number of analyses to return. maximum is 20
          default: 1000
          title: Limit
        description: The maximum number of analyses to return. maximum is 20
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          description: The number of analyses to skip (to paginate through the data)
          default: 0
          title: Offset
        description: The number of analyses to skip (to paginate through the data)
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Analysis'
                title: Response List Analyses Analyses Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      description: List all analyses that have been performed.
      tags:
      - Analysis
    delete:
      summary: Delete Multiple Analyses
      description: Delete multiple analyses at once by providing a list of analysis IDs.
      operationId: delete_analyses
      security:
      - APIKeyHeader: []
      - HTTPBearer: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteAnalysesRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeletionResponse'
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Not Found
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Analysis
  /analysis/{analysis_id}:
    get:
      summary: Retrieve Analysis
      operationId: get_analysis
      security:
      - APIKeyHeader: []
      - HTTPBearer: []
      parameters:
      - name: analysis_id
        in: path
        required: true
        schema:
          type: string
          title: Analysis Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Analysis'
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Not Found
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      description: Retrieve an analysis object by providing the analysis ID, which has the questions and answers.
      tags:
      - Analysis
  /analyze/data:
    post:
      tags:
      - Analysis
      summary: Analyze Data
      description: 'Analyze multiple documents all at once, either by passing a list of Document IDs or by passing a dataset name. If both are pased, we will use the intersection of the two. Analysis works by passing a list of questions in natural language. If a schemaId is passed, the AI will first use the standardizations of those documents under the provided schema to narrow down which documents are relevant. Only then, it will analyze the documents and provide answers to the questions, along with confidence scores and citations.

        If a schemaId is not passed, the AI will manually examine all documents, with a limit of 50.

        When schemaId is passed, the AI can optionally also perform database queries for statistical calculations and answer the questions based on those results.'
      operationId: post_analyze_data
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnalyzeDataRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostAnalyzeResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InsufficientCreditsError'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - APIKeyHeader: []
      - HTTPBearer: []
  /analyze/document:
    post:
      tags:
      - Analysis
      summary: Analyze Document
      description: Analyze a single document by passing a `documentId` and a list of questions in natural language. If the `pages` parameter is provided, the AI will only analyze the specified pages. Poll for the results using the `GET /job/{jobId}` endpoint with the returned jobId.
      operationId: post_analyze_document
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnalyzeDocumentRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostAnalyzeResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InsufficientCreditsError'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - APIKeyHeader: []
      - HTTPBearer: []
components:
  schemas:
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    InsufficientCreditsError:
      properties:
        detail:
          items:
            type: string
          type: array
          title: Detail
          description: Explanation about the exhausted credits
      type: object
      required:
      - detail
      title: InsufficientCreditsError
    AnalyzeDocumentRequest:
      properties:
        documentId:
          type: string
          title: Document ID
          description: Unique identifier of the document to be questioned.
        questions:
          items:
            type: string
          type: array
          title: Questions
          description: List of questions to be answered.
        instructions:
          type: string
          title: Instructions
          description: Global instructions to provide additional guidelines or context to the AI when answering the questions.
        pages:
          items:
            type: integer
          type: array
          title: Pages
          description: List of zero indexed page numbers to analyze. If omitted, all pages are analyzed. For XLS/XLSX files, each number selects a worksheet by its zero indexed position. This parameter is ignored for CSV, TXT, XML, and JSON files, which are always analyzed in full.
      type: object
      required:
      - documentId
      - questions
      title: AnalyzeDocumentRequest
    Citation:
      properties:
        documentId:
          type: string
          title: Document ID
          description: Unique identifier of the document where the citation is found.
        pages:
          items:
            type: integer
          type: array
          title: Pages
          description: List of page numbers where the citation is found (zero-indexed).
      type: object
      required:
      - documentId
      - pages
      title: Citation
    DeleteAnalysesRequest:
      properties:
        analysisIds:
          items:
            type: string
          type: array
          title: Analysis IDs
          description: List of analysis IDs to be deleted.
      type: object
      required:
      - analysisIds
      title: DeleteAnalysesRequest
    Analysis:
      properties:
        analysisId:
          type: string
          title: Analysis ID
          description: Unique identifier of the analysis object.
        jobId:
          type: string
          title: Job ID
          description: Unique identifier of the job that created the analysis.
        documentIds:
          items:
            type: string
          type: array
          title: Document IDs
          description: List of document IDs that were analyzed.
        filename:
          type: string
          title: Filename
          description: Name of the file that was analyzed, if there is only a single document.
        dataset:
          type: string
          title: Dataset
          description: Dataset which defines what documents are included in the analysis.
        schemaId:
          type: string
          title: Schema ID
          description: Unique identifier of the schema used to fetch standardizations for querying.
        numDocs:
          type: integer
          title: Number of Documents
          description: Number of documents analyzed.
        pages:
          items:
            type: integer
          type: array
          title: Pages
          description: List of page numbers to analyze. If none, all pages are analyzed. Only applies for single document.
        data:
          items:
            $ref: '#/components/schemas/QuestionAnswer'
          type: array
          title: Data (Questions and Answers)
          description: List of questions and answers for the analysis, along with confidence and citations.
        timestamp:
          type: string
          title: Timestamp
          description: Timestamp of the analysis job.
      type: object
      required:
      - analysisId
      - jobId
      - data
      title: Analysis
      description: Public-facing representation of DocuPipeAnalysis.
    Confidence:
      type: string
      enum:
      - high
      - medium
      - low
      title: Confidence
    AnalyzeDataRequest:
      properties:
        documentIds:
          items:
            type: string
          type: array
          title: Document IDs
          description: List of document IDs to analyze. If both dataset and documentIds are provided, we take the intersection of the two.
        dataset:
          type: string
          title: Dataset
          description: Dataset which defines what documents are included in the analysis. If both dataset and documentIds are provided, we take the intersection of the two.
        schemaId:
          type: string
          title: Schema ID
          description: Unique identifier of the schema to be used for the analysis. If provided, only those documents with a valid standardization under this schema will be included in the analysis.
        questions:
          items:
            type: string
          type: array
          title: Questions
          description: List of questions to be answered.
        instructions:
          type: string
          title: Instructions
          description: Global instructions to provide additional guidelines or context to the AI when answering the questions.
      type: object
      required:
      - questions
      title: AnalyzeDataRequest
      description: "Asyncronous request for the Analyze Data endpoint\n    "
    QuestionAnswer:
      properties:
        question:
          type: string
          title: Question
          description: The question to be answered.
        answer:
          type: string
          title: Answer
          description: The answer to the question.
        confidence:
          $ref: '#/components/schemas/Confidence'
          description: The confidence level of the answer.
        citations:
          items:
            $ref: '#/components/schemas/Citation'
          type: array
          title: Citations
          description: List of citations for the answer.
      type: object
      required:
      - question
      title: QuestionAnswer
    PostAnalyzeResponse:
      properties:
        jobId:
          type: string
          title: Job ID
          description: Unique identifier for the submitted job.
        analysisId:
          type: string
          title: Analysis ID
          description: Unique identifier for the analysis.
        success:
          type: boolean
          title: Success
          description: Whether the job was successful launched or not.
      type: object
      required:
      - jobId
      - analysisId
      - success
      title: PostAnalyzeResponse
      description: "Asyncronous response for analyze-document or analyze-data\n    "
    DeletionResponse:
      properties:
        success:
          type: boolean
          title: Success
          description: Whether the deletion was successful or not.
      type: object
      required:
      - success
      title: DeletionResponse
    ErrorResponse:
      properties:
        detail:
          items:
            type: string
          type: array
          title: Detail
          description: Details about the error
      type: object
      required:
      - detail
      title: ErrorResponse
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key
    HTTPBearer:
      type: http
      scheme: bearer
x-provenance:
  method: searched
  source: https://docs.docupipe.ai/reference
  harvested: '2026-10-14'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://docs.docupipe.ai/reference/apply_transformations.md
  - https://docs.docupipe.ai/reference/bulk_excel_download.md
  - https://docs.docupipe.ai/reference/bulk_ocr_download.md
  - https://docs.docupipe.ai/reference/bulk_original_download.md
  - https://docs.docupipe.ai/reference/bulk_xml_download.md
  - https://docs.docupipe.ai/reference/create_presigned_upload_url.md
  - https://docs.docupipe.ai/reference/create_transformation.md
  - https://docs.docupipe.ai/reference/delete_analyses.md
  - https://docs.docupipe.ai/reference/delete_class.md
  - https://docs.docupipe.ai/reference/delete_document.md
  - https://docs.docupipe.ai/reference/delete_documents.md
  - https://docs.docupipe.ai/reference/delete_endpoint.md
  - https://docs.docupipe.ai/reference/delete_jobs.md
  - https://docs.docupipe.ai/reference/delete_reviews.md
  - https://docs.docupipe.ai/reference/delete_schema.md
  - https://docs.docupipe.ai/reference/delete_standardization.md
  - https://docs.docupipe.ai/reference/delete_standardizations.md
  - https://docs.docupipe.ai/reference/delete_workflow.md
  - https://docs.docupipe.ai/reference/download_excel_url.md
  - https://docs.docupipe.ai/reference/download_ocr_url.md
  - https://docs.docupipe.ai/reference/download_original_url.md
  - https://docs.docupipe.ai/reference/download_public_url.md
  - https://docs.docupipe.ai/reference/generate_endpoint.md
  - https://docs.docupipe.ai/reference/get_account.md
  - https://docs.docupipe.ai/reference/get_analysis.md
  - https://docs.docupipe.ai/reference/get_convert_excel.md
  - https://docs.docupipe.ai/reference/get_document.md
  - https://docs.docupipe.ai/reference/get_document_detailed.md
  - https://docs.docupipe.ai/reference/get_document_summary.md
  - https://docs.docupipe.ai/reference/get_document_transformation_result.md
  - https://docs.docupipe.ai/reference/get_job.md
  - https://docs.docupipe.ai/reference/get_job_summary.md
  - https://docs.docupipe.ai/reference/get_portal_link.md
  - https://docs.docupipe.ai/reference/get_presigned_url.md
  - https://docs.docupipe.ai/reference/get_proposed_schemas.md
  - https://docs.docupipe.ai/reference/get_review_by_id.md
  - https://docs.docupipe.ai/reference/get_schema.md
  - https://docs.docupipe.ai/reference/get_schema_summary.md
  - https://docs.docupipe.ai/reference/get_standardization.md
  - https://docs.docupipe.ai/reference/get_standardization_pdf.md
  - https://docs.docupipe.ai/reference/get_standardization_review.md
  - https://docs.docupipe.ai/reference/get_standardization_summary.md
  - https://docs.docupipe.ai/reference/get_standardization_text.md
  - https://docs.docupipe.ai/reference/get_standardization_xml.md
  - https://docs.docupipe.ai/reference/get_transformation.md
  - https://docs.docupipe.ai/reference/get_transformation_result.md
  - https://docs.docupipe.ai/reference/get_webhook_endpoint.md
  - https://docs.docupipe.ai/reference/list_analyses.md
  - https://docs.docupipe.ai/reference/list_classes.md
  - https://docs.docupipe.ai/reference/list_datasets.md
  - https://docs.docupipe.ai/reference/list_documents.md
  - https://docs.docupipe.ai/reference/list_extractions.md
  - https://docs.docupipe.ai/reference/list_jobs.md
  - https://docs.docupipe.ai/reference/list_reviews.md
  - https://docs.docupipe.ai/reference/list_schemas.md
  - https://docs.docupipe.ai/reference/list_standardizations.md
  - https://docs.docupipe.ai/reference/list_transformations.md
  - https://docs.docupipe.ai/reference/list_webhook_endpoints.md
  - https://docs.docupipe.ai/reference/list_workflows.md
  - https://docs.docupipe.ai/reference/match_standardization.md
  - https://docs.docupipe.ai/reference/merged_excel_download.md
  - https://docs.docupipe.ai/reference/post_add_class.md
  - https://docs.docupipe.ai/reference/post_analyze_data.md
  - https://docs.docupipe.ai/reference/post_analyze_document.md
  - https://docs.docupipe.ai/reference/post_classify_batch.md
  - https://docs.docupipe.ai/reference/post_convert_excel.md
  - https://docs.docupipe.ai/reference/post_copy_classification.md
  - https://docs.docupipe.ai/reference/post_copy_schema.md
  - https://docs.docupipe.ai/reference/post_document.md
  - https://docs.docupipe.ai/reference/post_edit_class.md
  - https://docs.docupipe.ai/reference/post_edit_schema.md
  - https://docs.docupipe.ai/reference/post_merge.md
  - https://docs.docupipe.ai/reference/post_merge_standardizations.md
  - https://docs.docupipe.ai/reference/post_query.md
  - https://docs.docupipe.ai/reference/post_review_batch.md
  - https://docs.docupipe.ai/reference/post_schema.md
  - https://docs.docupipe.ai/reference/post_schema_autogenerate.md
  - https://docs.docupipe.ai/reference/post_split_document.md
  - https://docs.docupipe.ai/reference/post_standardize_batch_v2.md
  - https://docs.docupipe.ai/reference/post_standardize_v3.md
  - https://docs.docupipe.ai/reference/post_workflow_on_submit_document.md
  - https://docs.docupipe.ai/reference/run_workflow_v2.md
  - https://docs.docupipe.ai/reference/search_documents.md
  - https://docs.docupipe.ai/reference/search_schemas.md
  - https://docs.docupipe.ai/reference/search_standardizations.md
  - https://docs.docupipe.ai/reference/update_documents_dataset.md
  - https://docs.docupipe.ai/reference/update_documents_metadata.md
  - https://docs.docupipe.ai/reference/update_review.md
  - https://docs.docupipe.ai/reference/update_workflow.md
  - https://docs.docupipe.ai/reference/wait_for_jobs.md
  merge:
    pages: 90
    deduped: 553
    conflicts_kept_first: 0