Sensible Extract API

Document data extraction

OpenAPI Specification

sensible-io-extract-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Sensible REST Account Extract API
  description: 'REST API for document understanding: extract, classify, fill, generate, and manage document types, configs, reference documents, and extractions. Authenticated with a bearer token (API key).'
  version: '0'
  contact:
    name: Sensible
    url: https://docs.sensible.so/
servers:
- url: https://api.sensible.so/v0
  description: Sensible production API
security:
- bearerAuth: []
tags:
- name: Extract
  description: Document data extraction
paths:
  /extract/{document_type}:
    post:
      tags:
      - Extract
      summary: Extract data from a document (default config)
      operationId: extractDocument
      parameters:
      - $ref: '#/components/parameters/DocumentType'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtractRequest'
      responses:
        '200':
          $ref: '#/components/responses/ExtractResponse'
  /extract/{document_type}/{config_name}:
    post:
      tags:
      - Extract
      summary: Extract data from a document using a specific config
      operationId: extractDocumentWithConfig
      parameters:
      - $ref: '#/components/parameters/DocumentType'
      - $ref: '#/components/parameters/ConfigName'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtractRequest'
      responses:
        '200':
          $ref: '#/components/responses/ExtractResponse'
  /extract_from_url/{document_type}:
    post:
      tags:
      - Extract
      summary: Extract from a URL-hosted document (default config)
      operationId: extractFromUrl
      parameters:
      - $ref: '#/components/parameters/DocumentType'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtractFromUrlRequest'
      responses:
        '200':
          $ref: '#/components/responses/ExtractResponse'
  /extract_from_url/{document_type}/{config_name}:
    post:
      tags:
      - Extract
      summary: Extract from a URL-hosted document using a specific config
      operationId: extractFromUrlWithConfig
      parameters:
      - $ref: '#/components/parameters/DocumentType'
      - $ref: '#/components/parameters/ConfigName'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtractFromUrlRequest'
      responses:
        '200':
          $ref: '#/components/responses/ExtractResponse'
components:
  parameters:
    DocumentType:
      in: path
      name: document_type
      required: true
      schema:
        type: string
      description: Document type identifier
    ConfigName:
      in: path
      name: config_name
      required: true
      schema:
        type: string
      description: Config name
  schemas:
    ExtractFromUrlRequest:
      type: object
      properties:
        document_url:
          type: string
          format: uri
        document_name:
          type: string
        environment:
          type: string
          enum:
          - production
          - development
    ExtractRequest:
      type: object
      properties:
        document_url:
          type: string
          format: uri
        environment:
          type: string
          enum:
          - production
          - development
  responses:
    ExtractResponse:
      description: Extraction response
      content:
        application/json:
          schema:
            type: object
            properties:
              id:
                type: string
              status:
                type: string
              parsed_document:
                type: object
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key