From 4aa46fcbc1cf3279f572ff3a1c2110a6e1f31d4a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 2 May 2026 10:18:10 +0000 Subject: [PATCH 1/4] feat(api): api update --- .stats.yml | 4 ++-- src/cas_parser/resources/inbound_email.py | 16 ++++++++-------- .../types/inbound_email_create_response.py | 10 +++++----- .../types/inbound_email_list_response.py | 10 +++++----- .../types/inbound_email_retrieve_response.py | 10 +++++----- .../types/inbox_list_cas_files_response.py | 7 ++++++- 6 files changed, 31 insertions(+), 26 deletions(-) diff --git a/.stats.yml b/.stats.yml index d5b8f44..cd58596 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 21 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cas-parser/cas-parser-2fd773786951b723a5d7d7342bf1c6ab46f08bd2851e916d188faae379d5aa4c.yml -openapi_spec_hash: 7515d1e5fe3130b9f5411f7aacbc8a64 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cas-parser/cas-parser-c7cca9a7a8e15f8a584c22eab142c4af72a329117f63cc3b3f7cabb25410f2ce.yml +openapi_spec_hash: f40d936e433bbf8c98179d0b36f304c8 config_hash: 5509bb7a961ae2e79114b24c381606d4 diff --git a/src/cas_parser/resources/inbound_email.py b/src/cas_parser/resources/inbound_email.py index 6028cba..75c1229 100644 --- a/src/cas_parser/resources/inbound_email.py +++ b/src/cas_parser/resources/inbound_email.py @@ -156,7 +156,7 @@ def retrieve( timeout: float | httpx.Timeout | None | NotGiven = not_given, ) -> InboundEmailRetrieveResponse: """ - Retrieve details of a specific mailbox including statistics. + Retrieve details of a specific inbound email including statistics. Args: extra_headers: Send extra headers @@ -190,10 +190,10 @@ def list( extra_body: Body | None = None, timeout: float | httpx.Timeout | None | NotGiven = not_given, ) -> InboundEmailListResponse: - """List all mailboxes associated with your API key. + """List all inbound emails associated with your API key. - Returns active and inactive - mailboxes (deleted mailboxes are excluded). + Returns active and paused + inbound emails (deleted ones are excluded). Args: limit: Maximum number of inbound emails to return @@ -396,7 +396,7 @@ async def retrieve( timeout: float | httpx.Timeout | None | NotGiven = not_given, ) -> InboundEmailRetrieveResponse: """ - Retrieve details of a specific mailbox including statistics. + Retrieve details of a specific inbound email including statistics. Args: extra_headers: Send extra headers @@ -430,10 +430,10 @@ async def list( extra_body: Body | None = None, timeout: float | httpx.Timeout | None | NotGiven = not_given, ) -> InboundEmailListResponse: - """List all mailboxes associated with your API key. + """List all inbound emails associated with your API key. - Returns active and inactive - mailboxes (deleted mailboxes are excluded). + Returns active and paused + inbound emails (deleted ones are excluded). Args: limit: Maximum number of inbound emails to return diff --git a/src/cas_parser/types/inbound_email_create_response.py b/src/cas_parser/types/inbound_email_create_response.py index 77611a6..389d188 100644 --- a/src/cas_parser/types/inbound_email_create_response.py +++ b/src/cas_parser/types/inbound_email_create_response.py @@ -18,12 +18,12 @@ class InboundEmailCreateResponse(BaseModel): callback_url: Optional[str] = None """Webhook URL for email notifications. - `null` means files are only retrievable via `GET /v4/inbound-email/{id}/files` - (pull delivery). + Empty string (`""`) means files are only retrievable via + `GET /v4/inbound-email/{id}/files` (SDK / pull mode). """ created_at: Optional[datetime] = None - """When the mailbox was created""" + """When the inbound email was created""" email: Optional[str] = None """The inbound email address to forward CAS statements to""" @@ -38,7 +38,7 @@ class InboundEmailCreateResponse(BaseModel): """Your internal reference identifier""" status: Optional[Literal["active", "paused"]] = None - """Current mailbox status""" + """Current inbound email lifecycle status""" updated_at: Optional[datetime] = None - """When the mailbox was last updated""" + """When the inbound email was last updated""" diff --git a/src/cas_parser/types/inbound_email_list_response.py b/src/cas_parser/types/inbound_email_list_response.py index 2d700b6..896ebdb 100644 --- a/src/cas_parser/types/inbound_email_list_response.py +++ b/src/cas_parser/types/inbound_email_list_response.py @@ -18,12 +18,12 @@ class InboundEmail(BaseModel): callback_url: Optional[str] = None """Webhook URL for email notifications. - `null` means files are only retrievable via `GET /v4/inbound-email/{id}/files` - (pull delivery). + Empty string (`""`) means files are only retrievable via + `GET /v4/inbound-email/{id}/files` (SDK / pull mode). """ created_at: Optional[datetime] = None - """When the mailbox was created""" + """When the inbound email was created""" email: Optional[str] = None """The inbound email address to forward CAS statements to""" @@ -38,10 +38,10 @@ class InboundEmail(BaseModel): """Your internal reference identifier""" status: Optional[Literal["active", "paused"]] = None - """Current mailbox status""" + """Current inbound email lifecycle status""" updated_at: Optional[datetime] = None - """When the mailbox was last updated""" + """When the inbound email was last updated""" class InboundEmailListResponse(BaseModel): diff --git a/src/cas_parser/types/inbound_email_retrieve_response.py b/src/cas_parser/types/inbound_email_retrieve_response.py index cfcb7e5..7e397ff 100644 --- a/src/cas_parser/types/inbound_email_retrieve_response.py +++ b/src/cas_parser/types/inbound_email_retrieve_response.py @@ -18,12 +18,12 @@ class InboundEmailRetrieveResponse(BaseModel): callback_url: Optional[str] = None """Webhook URL for email notifications. - `null` means files are only retrievable via `GET /v4/inbound-email/{id}/files` - (pull delivery). + Empty string (`""`) means files are only retrievable via + `GET /v4/inbound-email/{id}/files` (SDK / pull mode). """ created_at: Optional[datetime] = None - """When the mailbox was created""" + """When the inbound email was created""" email: Optional[str] = None """The inbound email address to forward CAS statements to""" @@ -38,7 +38,7 @@ class InboundEmailRetrieveResponse(BaseModel): """Your internal reference identifier""" status: Optional[Literal["active", "paused"]] = None - """Current mailbox status""" + """Current inbound email lifecycle status""" updated_at: Optional[datetime] = None - """When the mailbox was last updated""" + """When the inbound email was last updated""" diff --git a/src/cas_parser/types/inbox_list_cas_files_response.py b/src/cas_parser/types/inbox_list_cas_files_response.py index 25b960f..aa8673d 100644 --- a/src/cas_parser/types/inbox_list_cas_files_response.py +++ b/src/cas_parser/types/inbox_list_cas_files_response.py @@ -16,7 +16,12 @@ class File(BaseModel): """Detected CAS provider based on sender email""" expires_in: Optional[int] = None - """URL expiration time in seconds (default 86400 = 24 hours)""" + """URL expiration time in seconds. Defaults vary by source: + + - Gmail Inbox Import: 86400 (24h) + - Inbound Email (webhook mode): 172800 (48h) + - Inbound Email (SDK mode): aligned with the session TTL (~30 min) + """ filename: Optional[str] = None """Standardized filename (provider_YYYYMMDD_uniqueid.pdf)""" From 809f3de0c92ab34db2ffcdcc494adaba9913fe7a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 2 May 2026 11:18:14 +0000 Subject: [PATCH 2/4] feat(api): api update --- .stats.yml | 4 ++-- src/cas_parser/types/inbound_email_create_response.py | 4 ++-- src/cas_parser/types/inbound_email_list_response.py | 4 ++-- src/cas_parser/types/inbound_email_retrieve_response.py | 4 ++-- src/cas_parser/types/inbox_list_cas_files_response.py | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.stats.yml b/.stats.yml index cd58596..d224bd8 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 21 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cas-parser/cas-parser-c7cca9a7a8e15f8a584c22eab142c4af72a329117f63cc3b3f7cabb25410f2ce.yml -openapi_spec_hash: f40d936e433bbf8c98179d0b36f304c8 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cas-parser/cas-parser-0dce3ce202e44ecf2270f6ca42942cc297bbeeafddb3128f8230ba3ae85c7551.yml +openapi_spec_hash: e9cef5743f686d9f12910c81832accca config_hash: 5509bb7a961ae2e79114b24c381606d4 diff --git a/src/cas_parser/types/inbound_email_create_response.py b/src/cas_parser/types/inbound_email_create_response.py index 389d188..b9de61d 100644 --- a/src/cas_parser/types/inbound_email_create_response.py +++ b/src/cas_parser/types/inbound_email_create_response.py @@ -18,8 +18,8 @@ class InboundEmailCreateResponse(BaseModel): callback_url: Optional[str] = None """Webhook URL for email notifications. - Empty string (`""`) means files are only retrievable via - `GET /v4/inbound-email/{id}/files` (SDK / pull mode). + If set, we POST each parsed email here. If omitted, files are only retrievable + via `GET /v4/inbound-email/{id}/files`. """ created_at: Optional[datetime] = None diff --git a/src/cas_parser/types/inbound_email_list_response.py b/src/cas_parser/types/inbound_email_list_response.py index 896ebdb..5f76158 100644 --- a/src/cas_parser/types/inbound_email_list_response.py +++ b/src/cas_parser/types/inbound_email_list_response.py @@ -18,8 +18,8 @@ class InboundEmail(BaseModel): callback_url: Optional[str] = None """Webhook URL for email notifications. - Empty string (`""`) means files are only retrievable via - `GET /v4/inbound-email/{id}/files` (SDK / pull mode). + If set, we POST each parsed email here. If omitted, files are only retrievable + via `GET /v4/inbound-email/{id}/files`. """ created_at: Optional[datetime] = None diff --git a/src/cas_parser/types/inbound_email_retrieve_response.py b/src/cas_parser/types/inbound_email_retrieve_response.py index 7e397ff..4657e4d 100644 --- a/src/cas_parser/types/inbound_email_retrieve_response.py +++ b/src/cas_parser/types/inbound_email_retrieve_response.py @@ -18,8 +18,8 @@ class InboundEmailRetrieveResponse(BaseModel): callback_url: Optional[str] = None """Webhook URL for email notifications. - Empty string (`""`) means files are only retrievable via - `GET /v4/inbound-email/{id}/files` (SDK / pull mode). + If set, we POST each parsed email here. If omitted, files are only retrievable + via `GET /v4/inbound-email/{id}/files`. """ created_at: Optional[datetime] = None diff --git a/src/cas_parser/types/inbox_list_cas_files_response.py b/src/cas_parser/types/inbox_list_cas_files_response.py index aa8673d..c4d1c62 100644 --- a/src/cas_parser/types/inbox_list_cas_files_response.py +++ b/src/cas_parser/types/inbox_list_cas_files_response.py @@ -19,8 +19,8 @@ class File(BaseModel): """URL expiration time in seconds. Defaults vary by source: - Gmail Inbox Import: 86400 (24h) - - Inbound Email (webhook mode): 172800 (48h) - - Inbound Email (SDK mode): aligned with the session TTL (~30 min) + - Inbound Email with `callback_url` set: 172800 (48h) + - Inbound Email without `callback_url`: aligned with the session TTL (~30 min) """ filename: Optional[str] = None From eb9a17588b4d391b63e3a30b840b1236f1fd945d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 2 May 2026 23:18:15 +0000 Subject: [PATCH 3/4] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index d224bd8..582a92c 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 21 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cas-parser/cas-parser-0dce3ce202e44ecf2270f6ca42942cc297bbeeafddb3128f8230ba3ae85c7551.yml -openapi_spec_hash: e9cef5743f686d9f12910c81832accca +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cas-parser/cas-parser-e572d88c2af6e4d7bc4f7e119357fd3f68b1e67d612fd1d3a657d916cde0087c.yml +openapi_spec_hash: a9fc7d947111bffa9184f8ca8be4a579 config_hash: 5509bb7a961ae2e79114b24c381606d4 From b42c76c230bdd9ea7c21b831dfe2e07b74283247 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 2 May 2026 23:18:34 +0000 Subject: [PATCH 4/4] release: 1.10.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 9 +++++++++ pyproject.toml | 2 +- src/cas_parser/_version.py | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index c3c9552..eb4e0db 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.9.0" + ".": "1.10.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index f18b2d7..82a65d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 1.10.0 (2026-05-02) + +Full Changelog: [v1.9.0...v1.10.0](https://github.com/CASParser/cas-parser-python/compare/v1.9.0...v1.10.0) + +### Features + +* **api:** api update ([809f3de](https://github.com/CASParser/cas-parser-python/commit/809f3de0c92ab34db2ffcdcc494adaba9913fe7a)) +* **api:** api update ([4aa46fc](https://github.com/CASParser/cas-parser-python/commit/4aa46fcbc1cf3279f572ff3a1c2110a6e1f31d4a)) + ## 1.9.0 (2026-05-01) Full Changelog: [v1.8.0...v1.9.0](https://github.com/CASParser/cas-parser-python/compare/v1.8.0...v1.9.0) diff --git a/pyproject.toml b/pyproject.toml index 8d75d05..7916b18 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "cas-parser-python" -version = "1.9.0" +version = "1.10.0" description = "The official Python library for the cas-parser API" dynamic = ["readme"] license = "Apache-2.0" diff --git a/src/cas_parser/_version.py b/src/cas_parser/_version.py index 97845a8..43c27c5 100644 --- a/src/cas_parser/_version.py +++ b/src/cas_parser/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "cas_parser" -__version__ = "1.9.0" # x-release-please-version +__version__ = "1.10.0" # x-release-please-version