Parseur Parser API

The Parser API from Parseur — 8 operation(s) for parser.

OpenAPI Specification

parseur-parser-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Parseur async Parser API
  description: ''
  version: 1.0.0
servers:
- url: https://api.parseur.com
  description: Parseur API
security:
- TokenAuth: []
tags:
- name: Parser
paths:
  /parser/{id}/document_set:
    get:
      summary: List documents in a mailbox
      deprecated: false
      description: ''
      tags:
      - Parser
      parameters:
      - name: id
        in: path
        description: ''
        required: true
        example: '{{PARSER_ID}}'
        schema:
          type: string
      - name: page
        in: query
        description: Page number for pagination (default is 1)
        required: false
        schema:
          type: integer
          minimum: 1
      - name: page_size
        in: query
        description: Number of results per page (default is 25)
        required: false
        schema:
          type: integer
          minimum: 1
      - name: search
        in: query
        description: Case-insensitive partial match search
        required: false
        schema:
          type: string
      - name: ordering
        in: query
        description: Field name to order by (use -prefix for descending)
        required: false
        schema:
          type: string
          enum:
          - name
          - -name
          - created
          - -created
          - processed
          - -processed
          - status
          - -status
      - name: received_after
        in: query
        description: Filter documents received after this date (yyyy-mm-dd)
        required: false
        schema:
          type: string
          format: date
      - name: received_before
        in: query
        description: Filter documents received before this date (yyyy-mm-dd)
        required: false
        schema:
          type: string
          format: date
      - name: status
        in: query
        description: Filter documents by status
        required: false
        schema:
          $ref: '#/components/schemas/DocumentStatusEnum'
      - name: tz
        in: query
        description: Timezone for date filters (e.g. Asia%2FSingapore). Defaults to UTC.
        required: false
        schema:
          type: string
      - name: with_result
        in: query
        description: Include parsed result string with each document
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: List of documents (paginated)
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                    readOnly: true
                  current:
                    type: integer
                    readOnly: true
                  total:
                    type: integer
                    readOnly: true
                  results:
                    type: array
                    items:
                      properties:
                        attached_to:
                          type: 'null'
                        id:
                          type: integer
                        match_master_template:
                          type: boolean
                        name:
                          type: string
                        ocr_ready_url:
                          type: string
                        original_document_url:
                          type: string
                        parser:
                          type: integer
                        processed:
                          type: string
                        received:
                          type: string
                        sample_set:
                          type: array
                          items:
                            type: string
                        status_source:
                          type: string
                        status:
                          type: string
                        template:
                          type: 'null'
                        credits_used:
                          type: integer
                        conventional_credits_used:
                          type: integer
                        ai_credits_used:
                          type: integer
                        is_ai_ready:
                          type: boolean
                        is_ocr_ready:
                          type: boolean
                        is_processable:
                          type: boolean
                        is_splittable:
                          type: boolean
                        is_split:
                          type: boolean
                        json_download_url:
                          type: string
                        csv_download_url:
                          type: string
                        xls_download_url:
                          type: string
                      required:
                      - attached_to
                      - id
                      - match_master_template
                      - name
                      - ocr_ready_url
                      - original_document_url
                      - parser
                      - processed
                      - received
                      - sample_set
                      - status_source
                      - status
                      - template
                      - credits_used
                      - conventional_credits_used
                      - ai_credits_used
                      - is_ai_ready
                      - is_ocr_ready
                      - is_processable
                      - is_splittable
                      - is_split
                      - json_download_url
                      - csv_download_url
                      - xls_download_url
                      $ref: '#/components/schemas/DocumentDiet'
                    readOnly: true
                required:
                - count
                - current
                - total
                - results
              example:
                count: 2
                current: 1
                total: 1
                results:
                - attached_to: 12345680
                  id: 12345679
                  match_master_template: false
                  name: document_1.pdf
                  ocr_ready_url: https://api.parseur.com/document/ABC12345XYZ67890/ocr_ready/document_1.pdf
                  original_document_url: https://api.parseur.com/document/ABC12345XYZ67890/document_1.pdf
                  parser: 98765
                  processed: '2025-08-06T12:09:59.608371Z'
                  received: '2025-08-06T12:09:52.063182Z'
                  sample_set: []
                  status_source: AI
                  status: PARSEDOK
                  template: null
                  credits_used: 1
                  conventional_credits_used: 0
                  ai_credits_used: 1
                  is_ai_ready: true
                  is_ocr_ready: true
                  is_processable: true
                  is_splittable: false
                  is_split: false
                  json_download_url: https://api.parseur.com/document/ABC12345XYZ67890/result/document_1.json
                  csv_download_url: https://api.parseur.com/document/ABC12345XYZ67890/result/document_1.csv
                  xls_download_url: https://api.parseur.com/document/ABC12345XYZ67890/result/document_1.xlsx
                - attached_to: null
                  id: 12345680
                  match_master_template: false
                  name: message_2.eml
                  ocr_ready_url: null
                  original_document_url: https://api.parseur.com/document/DEF98765UVW43210/message_2.eml
                  parser: 98765
                  processed: '2025-08-06T12:09:55.150511Z'
                  received: '2025-08-06T12:09:49.901419Z'
                  sample_set: []
                  status_source: METADATA
                  status: PARSEDOK
                  template: null
                  credits_used: 1
                  conventional_credits_used: 1
                  ai_credits_used: 0
                  is_ai_ready: true
                  is_ocr_ready: false
                  is_processable: true
                  is_splittable: false
                  is_split: false
                  json_download_url: https://api.parseur.com/document/DEF98765UVW43210/result/message_2.json
                  csv_download_url: https://api.parseur.com/document/DEF98765UVW43210/result/message_2.csv
                  xls_download_url: https://api.parseur.com/document/DEF98765UVW43210/result/message_2.xlsx
          headers: {}
        '403':
          $ref: '#/components/responses/Authentication Error'
          description: ''
        '404':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  non_field_errors:
                    type: string
                required:
                - non_field_errors
              example:
                non_field_errors: Parser 123456 not found
          headers: {}
      security:
      - TokenAuth: []
  /parser:
    get:
      summary: List mailboxes
      deprecated: false
      description: Optional query parameters for pagination and filtering
      tags:
      - Parser
      parameters:
      - name: page
        in: query
        description: Page number for pagination (default is 1)
        required: false
        schema:
          type: integer
          minimum: 1
      - name: page_size
        in: query
        description: Number of results per page (default is 25)
        required: false
        schema:
          type: integer
          minimum: 1
      - name: search
        in: query
        description: Case-insensitive partial match search
        required: false
        schema:
          type: string
      - name: ordering
        in: query
        description: Field name to order by (use -prefix for descending)
        required: false
        schema:
          type:
          - string
          - 'null'
          enum:
          - name
          - -name
          - document_count
          - -document_count
          - template_count
          - -template_count
          - PARSEDOK_count
          - -PARSEDOK_count
          - PARSEDKO_count
          - -PARSEDKO_count
          - QUOTAEXC_count
          - -QUOTAEXC_count
          - EXPORTKO_count
          - -EXPORTKO_count
          - TRANSKO_count
          - -TRANSKO_count
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                    readOnly: true
                  current:
                    type: integer
                    readOnly: true
                  total:
                    type: integer
                    readOnly: true
                  results:
                    type: array
                    items:
                      properties:
                        account_uuid:
                          type: string
                        ai_engine:
                          type: string
                        attachments_only:
                          type: boolean
                        attachments_only_override:
                          type: 'null'
                        can_transform:
                          type: boolean
                        disable_deskew:
                          type: boolean
                        enable_layouted_text:
                          type: boolean
                        enable_image_ocr:
                          type: boolean
                        document_count:
                          type: integer
                        document_per_status_count:
                          type: object
                          properties:
                            INCOMING:
                              type: integer
                            ANALYZING:
                              type: integer
                            PROGRESS:
                              type: integer
                            PARSEDOK:
                              type: integer
                            PARSEDKO:
                              type: integer
                            QUOTAEXC:
                              type: integer
                            SKIPPED:
                              type: integer
                            SPLIT:
                              type: integer
                            DELETED:
                              type: integer
                            EXPORTKO:
                              type: integer
                            TRANSKO:
                              type: integer
                            INVALID:
                              type: integer
                          required:
                          - INCOMING
                          - ANALYZING
                          - PROGRESS
                          - PARSEDOK
                          - PARSEDKO
                          - QUOTAEXC
                          - SKIPPED
                          - SPLIT
                          - DELETED
                          - EXPORTKO
                          - TRANSKO
                          - INVALID
                        email_prefix:
                          type: string
                        even_pages:
                          type: boolean
                        force_ocr:
                          type: boolean
                        id:
                          type: integer
                        is_master:
                          type: boolean
                        last_activity:
                          type: string
                        name:
                          type: string
                        odd_pages:
                          type: boolean
                        page_range_set:
                          type: array
                          items:
                            type: string
                        parser_object_count:
                          type: integer
                        parser_object_set_last_modified:
                          type: 'null'
                        process_attachments:
                          type: boolean
                        retention_policy:
                          type: integer
                        split_keywords:
                          type: 'null'
                        split_page:
                          type: 'null'
                        split_page_range_set:
                          type: array
                          items:
                            type: string
                        template_count:
                          type: integer
                        webhook_count:
                          type: integer
                        attachments_field:
                          type: boolean
                        original_document_field:
                          type: boolean
                        searchable_pdf_field:
                          type: boolean
                        headers_field:
                          type: boolean
                        received_field:
                          type: boolean
                        received_date_field:
                          type: boolean
                        received_time_field:
                          type: boolean
                        processed_field:
                          type: boolean
                        processed_date_field:
                          type: boolean
                        processed_time_field:
                          type: boolean
                        sender_field:
                          type: boolean
                        sender_name_field:
                          type: boolean
                        split_page_range_field:
                          type: boolean
                        recipient_field:
                          type: boolean
                        to_field:
                          type: boolean
                        cc_field:
                          type: boolean
                        bcc_field:
                          type: boolean
                        reply_to_field:
                          type: boolean
                        recipient_suffix_field:
                          type: boolean
                        original_recipient_field:
                          type: boolean
                        subject_field:
                          type: boolean
                        template_field:
                          type: boolean
                        html_document_field:
                          type: boolean
                        text_document_field:
                          type: boolean
                        content_field:
                          type: boolean
                        last_reply_field:
                          type: boolean
                        document_id_field:
                          type: boolean
                        parent_id_field:
                          type: boolean
                        document_url_field:
                          type: boolean
                        public_document_url_field:
                          type: boolean
                        page_count_field:
                          type: boolean
                        credit_count_field:
                          type: boolean
                        mailbox_id_field:
                          type: boolean
                        parsing_engine_field:
                          type: boolean
                        available_webhook_set:
                          type: array
                          items:
                            type: string
                        webhook_set:
                          type: array
                          items:
                            type: string
                        table_set:
                          type: array
                          items:
                            type: string
                      $ref: '#/components/schemas/ParserDiet'
                    readOnly: true
                required:
                - count
                - current
                - total
                - results
              examples:
                '1':
                  summary: Success
                  value: "{\n    \"count\": 2,\n    \"current\": 1,\n    \"total\": 1,\n    \"results\": [\n        {\n            \"account_uuid\": \"acc_1234561ef2f5467db594234a0f4ef1af\",\n            \"ai_engine\": \"GCP_AI_1\",\n            \"attachments_only\": false,\n            \"attachments_only_override\": false,\n            \"can_transform\": false,\n            \"disable_deskew\": false,\n            \"enable_layouted_text\": true,\n            \"enable_image_ocr\": true,\n            \"document_count\": 6,\n            \"document_per_status_count\": {\n                \"INCOMING\": 0,\n                \"ANALYZING\": 0,\n                \"PROGRESS\": 0,\n                \"PARSEDOK\": 4,\n                \"PARSEDKO\": 0,\n                \"QUOTAEXC\": 2,\n                \"SKIPPED\": 0,\n                \"SPLIT\": 0,\n                \"DELETED\": 0,\n                \"EXPORTKO\": 0,\n                \"TRANSKO\": 0,\n                \"INVALID\": 0\n            },\n            \"email_prefix\": \"test.mailbox\",\n            \"even_pages\": true,\n            \"force_ocr\": false,\n            \"id\": 123456,\n            \"is_master\": false,\n            \"last_activity\": \"2025-08-08T09:48:45.578235Z\",\n            \"master_parser_name\": \"Invoices\",\n            \"master_parser_slug\": \"invoices\",\n            \"name\": \"Test Mailbox\",\n            \"odd_pages\": true,\n            \"page_range_set\": [],\n            \"parser_object_count\": 39,\n            \"parser_object_set_last_modified\": \"2025-08-08T08:55:30.740946Z\",\n            \"process_attachments\": true,\n            \"retention_policy\": 90,\n            \"split_keywords\": null,\n            \"split_page\": null,\n            \"split_page_range_set\": [],\n            \"template_count\": 1,\n            \"webhook_count\": 1,\n            \"attachments_field\": true,\n            \"original_document_field\": true,\n            \"searchable_pdf_field\": false,\n            \"headers_field\": true,\n            \"received_field\": false,\n            \"received_date_field\": false,\n            \"received_time_field\": false,\n            \"processed_field\": false,\n            \"processed_date_field\": false,\n            \"processed_time_field\": false,\n            \"sender_field\": false,\n            \"sender_name_field\": false,\n            \"split_page_range_field\": false,\n            \"recipient_field\": false,\n            \"to_field\": false,\n            \"cc_field\": false,\n            \"bcc_field\": false,\n            \"reply_to_field\": false,\n            \"recipient_suffix_field\": false,\n            \"original_recipient_field\": false,\n            \"subject_field\": false,\n            \"template_field\": false,\n            \"html_document_field\": true,\n            \"text_document_field\": false,\n            \"content_field\": true,\n            \"last_reply_field\": false,\n            \"document_id_field\": true,\n            \"parent_id_field\": false,\n            \"document_url_field\": false,\n            \"public_document_url_field\": false,\n            \"page_count_field\": false,\n            \"credit_count_field\": false,\n            \"mailbox_id_field\": false,\n            \"parsing_engine_field\": false,\n            \"available_webhook_set\": [\n                {\n                    \"id\": 14,\n                    \"event\": \"document.processed\",\n                    \"target\": \"https://test.webhooks/test\",\n                    \"name\": \"My Webhooks\",\n                    \"headers\": {\n                        \"X-Test\": \"yes\"\n                    },\n                    \"category\": \"CUSTOM\",\n                    \"parser_field_set\": []\n                },\n                {\n                    \"id\": 15,\n                    \"event\": \"table.processed\",\n                    \"target\": \"https://another.webhook/test\",\n                    \"name\": \"\",\n                    \"headers\": null,\n                    \"category\": \"CUSTOM\",\n                    \"parser_field_set\": [\n                        \"PF1504082\"\n                    ]\n                }\n            ],\n            \"webhook_set\": [\n                {\n                    \"id\": 15,\n                    \"event\": \"table.processed\",\n                    \"target\": \"https://another.webhook/test\",\n                    \"name\": \"\",\n                    \"headers\": null,\n                    \"category\": \"CUSTOM\",\n                    \"parser_field_set\": [\n                        \"PF1504082\"\n                    ]\n                }\n            ],\n            \"table_set\": [\n                {\n                    \"id\": \"PF1504099\",\n                    \"name\": \"Items\"\n                },\n                {\n                    \"id\": \"PF1504082\",\n                    \"name\": \"fees\"\n                },\n                {\n                    \"id\": \"Attachments\",\n                    \"name\": \"Attachments\"\n                }\n            ]\n        },\n        {\n            \"account_uuid\": \"acc_1234561ef2f5467db594234a0f4ef1af\",\n            \"ai_engine\": \"DISABLED\",\n            // rest removed for brevity\n        }\n    ]\n}"
                '2':
                  summary: Not authenticated
                  value:
                    non_field_errors: Not authenticated
          headers: {}
        '403':
          $ref: '#/components/responses/Authentication Error'
          description: ''
      security:
      - TokenAuth: []
    post:
      summary: Create a mailbox
      deprecated: false
      description: ''
      tags:
      - Parser
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Parser'
            example:
              ai_engine: GCP_AI_1
              identification_status: REQUESTED
      responses:
        '201':
          description: Mailbox created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Parser'
              example:
                account_uuid: acc_9876541ef2f5467db594234a0f4ef1af
                ai_engine: GCP_AI_1
                attachments_only: false
                attachments_only_override: null
                can_transform: false
                disable_deskew: false
                enable_layouted_text: true
                enable_image_ocr: true
                document_count: 0
                document_per_status_count:
                  INCOMING: 0
                  ANALYZING: 0
                  PROGRESS: 0
                  PARSEDOK: 0
                  PARSEDKO: 0
                  QUOTAEXC: 0
                  SKIPPED: 0
                  SPLIT: 0
                  DELETED: 0
                  EXPORTKO: 0
                  TRANSKO: 0
                  INVALID: 0
                email_prefix: steadfast.tender.tamarin
                even_pages: true
                force_ocr: false
                id: 321654
                is_master: false
                last_activity: '2025-08-08T12:00:39.796530Z'
                name: Steadfast Tender Tamarin
                odd_pages: true
                page_range_set: []
                parser_object_count: 0
                parser_object_set_last_modified: null
                process_attachments: true
                retention_policy: 90
                split_keywords: null
                split_page: null
                split_page_range_set: []
                template_count: 0
                webhook_count: 0
                attachments_field: false
                original_document_field: false
                searchable_pdf_field: false
                headers_field: false
                received_field: false
                received_date_field: false
                received_time_field: false
                processed_field: false
                processed_date_field: false
                processed_time_field: false
                sender_field: false
                sender_name_field: false
                split_page_range_field: false
                recipient_field: false
                to_field: false
                cc_field: false
                bcc_field: false
                reply_to_field: false
                recipient_suffix_field: false
                original_recipient_field: false
                subject_field: false
                template_field: false
                html_document_field: false
                text_document_field: false
                content_field: false
                last_reply_field: false
                document_id_field: false
                parent_id_field: false
                document_url_field: false
                public_document_url_field: false
                page_count_field: false
                credit_count_field: false
                mailbox_id_field: false
                parsing_engine_field: false
                csv_download: /parser/<secret>.tender.tamarin.csv
                decimal_separator: null
                default_timezone: null
                disable_document_links: false
                expand_result: false
                extract_xml_from_comment: false
                input_date_format: null
                identification_status: REQUESTED
                is_transform_enabled: false
                json_download: /parser/<secret>.tender.tamarin.json
                parser_object_set: []
                pdf_conversion_format: TXT_LAYOUT
                secret: <secret>
                transform: null
                unzip_attachments: true
                use_whitelist_instead_of_blacklist: false
                template_set_last_modified: null
                webhook_set: []
                xls_download: /parser/<secret>.tender.tamarin.xlsx
                zip_attachments: false
                available_webhook_set: []
                table_set: []
                emails_or_domains: []
          headers: {}
        '400':
          description: Invalid input
          headers: {}
        '403':
          $ref: '#/components/responses/Authentication Error'
          description: ''
        '404':
          $ref: '#/components/responses/Not Found'
          description: ''
      security:
      - TokenAuth: []
  /parser/{id}:
    get:
      summary: Get a mailbox
      deprecated: false
      description: ''
      tags:
      - Parser
      parameters:
      - name: id
        in: path
        description: ''
        required: true
        example: '{{PARSER_ID}}'
        schema:
          type: integer
      responses:
        '200':
          description: Mailbox retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Parser'
              example:
                account_uuid: acc_1234561ef2f5467db594234a0f4ef1af
                ai_engine: GCP_AI_1
                attachments_only: false
                attachments_only_override: false
                can_transform: false
                disable_deskew: false
                enable_layouted_text: true
                enable_image_ocr: true
                document_count: 2
                document_per_status_count:
                  INCOMING: 0
                  ANALYZING: 0
                  PROGRESS: 0
                  PARSEDOK: 2
                  PARSEDKO: 0
                  QUOTAEXC: 0
                  SKIPPED: 0
                  SPLIT: 0
                  DELETED: 0
                  EXPORTKO: 0
                  TRANSKO: 0
                  INVALID: 0
                email_prefix: test.mailbox
                even_pages: true
                force_ocr: false
                id: 123456
                is_master: false
                last_activity: '2025-08-06T13:24:49.287169Z'
                master_parser_name: Invoices
                master_parser_slug: invoices
                name: Test Mailbox
                odd_pages: true
                page_range_set: []
                parser_object_count: 39
                parser_object_set_last_modified: '2025-08-06T13:24:49.373497Z'
                process_attachments: true
                retention_policy: 90
                split_keywords: null
                split_page: null
                split_page_range_set: []
                template_count: 1
                webhook_count: 0
                attachments_field: true
                original_document_field: true
                searchable_pdf_field: false
                headers_field: true
                received_field: false
                received_date_field: false
                received_time_field: false
                processed_field: false
                processed_date_field: false
                processed_time_field: false
                sender_field: false
                sender_name_field: false
                split_page_range_field: false
                recipient_field: false
                to_field: false
                cc_field: false
                bcc_field: false
                reply_to_field: false
                recipient_suffix_field: false
                original_recipient_field: false
                subject_field: false
                template_field: false
                html_document_field: true
                text_document_field: false
                content_field: true
                last_reply_field: false
                document_id_field: false
                parent_id_field: false
                document_url_field: false
                public_document_url_field: false
                page_count_field: false
                credit_count_field: false
                mailbox_id_field: false
                parsing_engine_field: false
                csv_download: /parser/<secret>/download/test.mailbox.csv
                decimal_separator: ','
                default_timezone: Africa/Banjul
   

# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/parseur/refs/heads/main/openapi/parseur-parser-api-openapi.yml