AIDataParser API

AIDataParser API as documented publicly: 8 operations. Contract generated from the documentation by API Evangelist (2026-11-01); not the provider's own document.

Operations 8

GET /v1/credits Returns the remaining credit balance for the authenticated key. #
POST /v1/keys POST /v1/keys #
POST /v1/mcp POST /v1/mcp #
POST /v1/parse/document POST /v1/parse/document #
POST /v1/parse/text Send raw or messy text — scraped web content, email bodies, chat logs, OCR output, or pasted tables — and get the same schema‑guaranteed JSON back. #
GET /v1/schemas GET /v1/schemas #
POST /v1/schemas/infer POST /v1/schemas/infer #
POST /v1/validate POST /v1/validate #

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/aidataparser-com:aidataparser-com-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

aidataparser-com-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: AIDataParser API
  version: '2026-11-01'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-11-01: 8 operation(s) read from 11 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; AIDataParser has published no machine-readable contract that
    the pipeline could find. Engine: local.'
  x-evidence-tiers:
    code-example: 6
    documentation: 2
    pages-with-code: 11
    pages-read: 11
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-11-01'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://aidataparser.com/use-cases/pdf-to-json-api
  - https://aidataparser.com/use-cases/receipt-ocr-api
  - https://aidataparser.com/use-cases/email-parsing-api
  - https://aidataparser.com/use-cases/resume-parser-api
  - https://aidataparser.com/use-cases/invoice-parsing-api
  - https://aidataparser.com/use-cases/packing-slip-parsing-api
  - https://aidataparser.com/use-cases/business-card-scanner-api
  - https://aidataparser.com/use-cases/purchase-order-parsing-api
  - https://aidataparser.com/use-cases/contract-data-extraction-api
  - https://aidataparser.com/use-cases/bank-statement-extraction-api
  - https://aidataparser.com/docs
paths:
  /v1/credits:
    get:
      operationId: get_v1_credits
      tags:
      - Credits
      summary: Returns the remaining credit balance for the authenticated key.
      x-source: https://aidataparser.com/docs
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
        description: Bearer token for the API key
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1CreditsResponse'
      x-evidence:
        kind: documentation
  /v1/keys:
    post:
      operationId: post_v1_keys
      tags:
      - Keys
      summary: POST /v1/keys
      x-source: https://aidataparser.com/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1KeysRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -X POST https://aidataparser.com/v1/keys  -H "Content-Type: application/json"  -d ''{"email":"you@example.com"}'''
  /v1/mcp:
    post:
      operationId: post_v1_mcp
      tags:
      - Mcp
      summary: POST /v1/mcp
      x-source: https://aidataparser.com/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1McpRequest'
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1McpResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -X POST https://aidataparser.com/v1/mcp  -H \"Authorization: Bearer adp_live_xxxxxxxx\"  -H \"Content-Type: application/json\"\
          \  -d '{\n \"jsonrpc\": \"2.0\",\n \"id\": 1,\n \"method\": \"tools/call\",\n \"params\": {\n \"name\": \"parse_document\",\n \"arguments\"\
          : { \"url\": \"https://example.com/receipt.png\" }\n }\n }' Tool results are returned as MCP content plus structuredContent . Extraction\
          \ failures come back with isEr"
  /v1/parse/document:
    post:
      operationId: post_v1_parse_document
      tags:
      - Parse
      summary: POST /v1/parse/document
      x-source: https://aidataparser.com/use-cases/pdf-to-json-api
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1ParseDocumentRequest'
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1ParseDocumentResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -X POST https://aidataparser.com/v1/parse/document  -H \"Authorization: Bearer adp_live_...\"  -H \"Content-Type: application/json\"\
          \  -d '{\n \"url\": \"https://example.com/document.pdf\",\n \"schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"title\": {\n\
          \ \"type\": \"string\"\n },\n \"summary\": {\n \"type\": \"string\"\n },\n \"tables\": {\n \"type\": \"array\",\n \"items\": {\n \"\
          type\": \"object\",\n \"properties\": {\n \"label\": {\n \"typ"
  /v1/parse/text:
    post:
      operationId: post_v1_parse_text
      tags:
      - Parse
      summary: Send raw or messy text — scraped web content, email bodies, chat logs, OCR output, or pasted tables — and get the same schema‑guaranteed
        JSON back.
      x-source: https://aidataparser.com/docs
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
        description: Bearer token for the API key
      - name: Content-Type
        in: header
        required: true
        schema:
          type: string
        description: application/json
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1ParseTextRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1ParseTextResponse'
      x-evidence:
        kind: documentation
  /v1/schemas:
    get:
      operationId: get_v1_schemas
      tags:
      - Schemas
      summary: GET /v1/schemas
      x-source: https://aidataparser.com/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: curl https://aidataparser.com/v1/schemas
  /v1/schemas/infer:
    post:
      operationId: post_v1_schemas_infer
      tags:
      - Schemas
      summary: POST /v1/schemas/infer
      x-source: https://aidataparser.com/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1SchemasInferRequest'
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1SchemasInferResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -X POST https://aidataparser.com/v1/schemas/infer  -H \"Authorization: Bearer adp_live_xxxxxxxx\"  -H \"Content-Type: application/json\"\
          \  -d '{\n \"text\": \"LAB REPORT\\nPatient: Jane Doe\\nGlucose: 92 mg/dL\\nCholesterol: 180 mg/dL\",\n \"doc_type\": \"lab report\"\
          \n }'"
  /v1/validate:
    post:
      operationId: post_v1_validate
      tags:
      - Validate
      summary: POST /v1/validate
      x-source: https://aidataparser.com/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1ValidateRequest'
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1ValidateResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -X POST https://aidataparser.com/v1/validate  -H \"Content-Type: application/json\"  -d '{\n \"schema_id\": \"invoice\"\
          ,\n \"data\": { \"invoice_number\": \"A-100\", \"total\": \"twelve\" }\n }'"
components:
  schemas:
    GetV1CreditsResponse:
      type: object
      properties:
        object:
          type: string
          description: Always "credit_balance"
        email:
          type: string
          description: The account the key belongs to.
        key_prefix:
          type: string
          description: First characters of the key, for dashboard/display matching.
        credits_remaining:
          type: integer
          description: Credits currently available to spend.
    PostV1KeysRequest:
      type: object
      properties:
        email:
          type: string
    PostV1McpRequest:
      type: object
      properties:
        jsonrpc:
          type: string
        id:
          type: integer
        method:
          type: string
        params:
          type: object
          properties:
            name:
              type: string
            arguments:
              type: object
              properties:
                url:
                  type: string
    PostV1McpResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
    PostV1ParseDocumentRequest:
      type: object
      properties:
        url:
          type: string
        schema:
          type: object
          properties:
            type:
              type: string
            properties:
              type: object
              properties:
                title:
                  type: object
                  properties:
                    type:
                      type: string
                summary:
                  type: object
                  properties:
                    type:
                      type: string
                tables:
                  type: object
                  properties:
                    type:
                      type: string
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        properties:
                          type: object
                          properties:
                            label:
                              type: object
                              properties:
                                type: {}
                            value:
                              type: object
                              properties:
                                type: {}
    PostV1ParseDocumentResponse:
      type: object
      properties:
        object:
          type: string
        data:
          type: object
          properties:
            title:
              type: string
            summary:
              type: string
            tables:
              type: array
              items:
                type: object
                properties:
                  label:
                    type: string
                  value:
                    type: string
        confidence:
          type: string
        review_needed:
          type: boolean
        credits_charged:
          type: integer
        credits_remaining:
          type: integer
    PostV1ParseTextRequest:
      type: object
      properties:
        text:
          type: string
          description: The raw text to extract from. Max 200,000 characters.
        schema:
          type: object
          description: A JSON Schema describing the desired output.
        schema_id:
          type: string
          description: A built-in template id used instead of writing your own schema.
        instructions:
          type: string
          description: Natural-language guidance for the extraction.
        redact:
          type: boolean
          description: Mask PII before the data leaves the server.
      required:
      - text
    PostV1ParseTextResponse:
      type: object
      properties:
        data:
          type: object
          description: The extracted structured JSON (matches your schema when supplied).
        confidence:
          type: string
          description: '"high" | "medium" | "low"'
        review_needed:
          type: boolean
          description: True when the document was ambiguous or low quality.
        notes:
          type: string
          description: Optional note about issues encountered.
        credits_charged:
          type: integer
          description: Credits used by this call.
        credits_remaining:
          type: integer
          description: Your remaining balance.
    PostV1SchemasInferRequest:
      type: object
      properties:
        text:
          type: string
        doc_type:
          type: string
    PostV1SchemasInferResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
    PostV1ValidateRequest:
      type: object
      properties:
        schema_id:
          type: string
        data:
          type: object
          properties:
            invoice_number:
              type: string
            total:
              type: string
    PostV1ValidateResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
security:
- bearer: []
tags:
- name: Credits
- name: Keys
- name: Mcp
- name: Parse
- name: Schemas
- name: Validate