Skip to main content
GET
/
v1
/
parses
from datetime import datetime
from retab import Retab

client = Retab()

# List recent parses
parses = client.parses.list(limit=20, order="desc")
for parse in parses.data:
    print(f"{parse.id}: {parse.file.filename}")

# Filter by date range
parses = client.parses.list(
    from_date=datetime(2024, 1, 1),
    to_date=datetime(2024, 12, 31),
    limit=50,
)
{
  "data": [
    {
      "id": "parse_01G34H8J2K",
      "organization_id": "org_abc123",
      "file": {
        "id": "file_6dd6eb00688ad8d1",
        "filename": "invoice.pdf",
        "mime_type": "application/pdf"
      },
      "model": "retab-small",
      "table_parsing_format": "markdown",
      "image_resolution_dpi": 192,
      "output": {
        "pages": ["Page 1 text...", "Page 2 text..."],
        "text": "Page 1 text...\n\nPage 2 text..."
      },
      "usage": {
        "page_count": 2,
        "credits": 1.0
      },
      "created_at": "2024-03-15T10:30:00Z",
      "updated_at": "2024-03-15T10:30:00Z"
    }
  ],
  "list_metadata": {
    "before": null,
    "after": "parse_01G34H8J2K",
    "total_count": 42
  }
}
List persisted parses for your organization, with cursor-based pagination and optional filename / date filtering.
from datetime import datetime
from retab import Retab

client = Retab()

# List recent parses
parses = client.parses.list(limit=20, order="desc")
for parse in parses.data:
    print(f"{parse.id}: {parse.file.filename}")

# Filter by date range
parses = client.parses.list(
    from_date=datetime(2024, 1, 1),
    to_date=datetime(2024, 12, 31),
    limit=50,
)
{
  "data": [
    {
      "id": "parse_01G34H8J2K",
      "organization_id": "org_abc123",
      "file": {
        "id": "file_6dd6eb00688ad8d1",
        "filename": "invoice.pdf",
        "mime_type": "application/pdf"
      },
      "model": "retab-small",
      "table_parsing_format": "markdown",
      "image_resolution_dpi": 192,
      "output": {
        "pages": ["Page 1 text...", "Page 2 text..."],
        "text": "Page 1 text...\n\nPage 2 text..."
      },
      "usage": {
        "page_count": 2,
        "credits": 1.0
      },
      "created_at": "2024-03-15T10:30:00Z",
      "updated_at": "2024-03-15T10:30:00Z"
    }
  ],
  "list_metadata": {
    "before": null,
    "after": "parse_01G34H8J2K",
    "total_count": 42
  }
}

Query Parameters

before
string
Cursor for backward pagination.
after
string
Cursor for forward pagination.
limit
integer
default:"10"
Maximum number of parses to return.
order
string
default:"desc"
Sort order by created_at. Valid values: asc, desc.
filename
string
Case-insensitive substring filter applied to file.filename.
from_date
string
Return parses created on or after this date, in YYYY-MM-DD format.
to_date
string
Return parses created on or before this date, in YYYY-MM-DD format.

Count

To fetch only the number of parses matching a filter (without paginating through results), use:
GET /v1/parses/count?filename=invoice&from_date=2024-01-01
which returns { "count": <int> }. The supported query parameters are the same as for list, minus pagination (before, after, limit, order).

Authorizations

Api-Key
string
header
required

Query Parameters

before
string | null
after
string | null
limit
integer
default:10
order
enum<string>
default:desc
Available options:
asc,
desc
filename
string | null
from_date
string | null
to_date
string | null
access_token
string | null

Response

Successful Response

data
any[]
required
list_metadata
ListMetadata · object
required