Parsio Public API

Related articles:

API Base

All the API endpoints described in this article are relative to the base URL:

https://api.parsio.io

Authentication

To access the API, you will need the API key that you will find in your account:

This API key should be included in the X-API-Key HTTP header.

Unauthenticated responses will return in a HTTP 401 Unauthorized code.

Here's a request example using cURL:

curl -X GET https://api.parsio.io/mailboxes/ -H "X-API-Key: <YOUR_API_KEY>"

Manage Mailboxes

List mailboxes

GET /mailboxes

Get a mailbox

GET /mailboxes/<mailbox_id>

Create a mailbox

POST /mailboxes/create

Parameters:

  • name (string): Mailbox name

Update a mailbox

POST /mailboxes/<mailbox_id>

Parameters:

  • name (string)
  • email_prefix (string)
  • process_attachments (boolean): store or ignore email attachments
  • collect_emails (boolean): collect or not email addresses automatically
  • alert_email_h (number): Email alerts frequency (in hours)

Delete a mailbox

DELETE /mailboxes/<mailbox_id>

List table fields in the mailbox

GET /mailboxes/<mailbox_id>/tableFields

Manage Documents

Create HTML and text documents

POST https://api.parsio.io/mailboxes/<mailbox_id>/doc

JSON parameters:

  • name (string): Document's name (or Subject for emails)
  • html (string): HTML content
  • text (string): Text content
  • from (string): 'From' email address (optional)
  • to (string): 'To' email address (optional)

If both provided, the HTML content has priority over TEXT content. At least one must be provided.

Related article: Parse HTML and text documents using API

Upload PDF and other files

POST /mailboxes/<mailbox_id>/upload

Upload and parse one file. Supported formats: PDF, HTML, CSV, TXT, DOCX, RTF or XML.

Max. file size: 2MB.

Parameters:

  • file (File object)

Related article: Parse PDF and files using API

List documents

GET /mailboxes/<mailbox_id>/docs

Parameters:

  • page (number)
  • from (string): 'from' date. Format: YYYY-MM-DD
  • to (string): 'to' date. Format: YYYY-MM-DD
  • q (string): search query
  • statuses (array of strings): Document statuses. Accepted values: parsed, fail, skipped, new, quota, parsing, exception.

Get a document

GET /docs/<document_id>

Parse a document

POST /docs/<document_id>/parse

Skip many documents

POST /mailboxes/<mailbox_id>/docs/skip

Parameters:

  • ids (array of strings): Document IDs to skip

Manage Templates

List templates

GET /:mb_id/templates

Parameters:

  • page (number)

Get a template

GET /templates/<template_id>

Enable templates

POST /templates/enable_many

Parameters:

  • ids (array of strings)

Disable templates

POST /templates/disable_many

Parameters:

  • ids (array of strings)

Delete templates

DELETE /templates

Parameters:

  • ids (array of strings)

Manage Webhooks

List webhooks

GET /webhooks/mb/<mailbox_id>

Get a webhook

GET /webhooks/<webhook_id>

Create a webhook

POST /webhooks/<mailbox_id>

Parameters:

  • url (string): webhook URL
  • event (string): trigger event. Accepted values: doc.parsed, doc.parsed.flat, doc.fail, doc.received, table.parsed
  • enabled (boolean)
  • table_id (string): Table ID, only for the 'table.parsed' event.

Update a webhook

POST /webhooks

Parameters:

  • _id (string): webhook ID
  • url (string): webhook URL
  • event (string): trigger event. Accepted values: doc.parsed, doc.parsed.flat, doc.fail, doc.received, table.parsed
  • enabled (boolean)
  • table_id (string): Table ID, only for the 'table.parsed' event.

Delete webhooks

DELETE /webhooks

Parameters:

  • ids (array of strings): Webhook IDs to delete

Manage Parsed Data

Get parsed data

GET /mailboxes/<mailbox_id>/parsed

Parameters:

  • page (number)
  • from (string): 'from' date. Format: YYYY-MM-DD
  • to (string): 'to' date. Format: YYYY-MM-DD

List collected emails

GET /mailboxes/<mailbox_id>/emails

 

Did we miss something? Let us know!
Was this article helpful? Happy face Sad face