Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.14.0"
".": "0.15.0"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 19
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/prelude/prelude-86fc45f417e6468f6a6087f9e35b264b0a350e31385bc078a2027a1f1abd1d15.yml
configured_endpoints: 27
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/prelude/prelude-33b70f86404b99046db5c61d3142b149dd7dec7eefe5e62ff3b397c7274aa5dc.yml
openapi_spec_hash: fb72aba38ec55a3b6b5162c9f5b4228d
config_hash: 3dbe79c14ecd9a153418249f9155d159
config_hash: 707d65d2f456a2b5ba5b2c565b60128a
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.15.0 (2026-09-18)

Full Changelog: [v0.14.0...v0.15.0](https://github.com/prelude-so/python-sdk/compare/v0.14.0...v0.15.0)

### Features

* **api:** manual updates ([6f8fe45](https://github.com/prelude-so/python-sdk/commit/6f8fe45cb794e6283855863693c12143ec2b4871))

## 0.14.0 (2026-09-15)

Full Changelog: [v0.13.0...v0.14.0](https://github.com/prelude-so/python-sdk/compare/v0.13.0...v0.14.0)
Expand Down
77 changes: 70 additions & 7 deletions api.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# Shared Types

```python
from prelude_python_sdk.types import Signals, Target
```

# Lookup

Types:
Expand All @@ -21,6 +27,7 @@ from prelude_python_sdk.types import (
NotifyListSubscriptionConfigsResponse,
NotifyListSubscriptionPhoneNumberEventsResponse,
NotifyListSubscriptionPhoneNumbersResponse,
NotifyReplyResponse,
NotifySendResponse,
NotifySendBatchResponse,
)
Expand All @@ -33,6 +40,7 @@ Methods:
- <code title="get /v2/notify/management/subscriptions">client.notify.<a href="./src/prelude_python_sdk/resources/notify.py">list_subscription_configs</a>(\*\*<a href="src/prelude_python_sdk/types/notify_list_subscription_configs_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/notify_list_subscription_configs_response.py">NotifyListSubscriptionConfigsResponse</a></code>
- <code title="get /v2/notify/management/subscriptions/{config_id}/phone_numbers/{phone_number}/events">client.notify.<a href="./src/prelude_python_sdk/resources/notify.py">list_subscription_phone_number_events</a>(phone_number, \*, config_id, \*\*<a href="src/prelude_python_sdk/types/notify_list_subscription_phone_number_events_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/notify_list_subscription_phone_number_events_response.py">NotifyListSubscriptionPhoneNumberEventsResponse</a></code>
- <code title="get /v2/notify/management/subscriptions/{config_id}/phone_numbers">client.notify.<a href="./src/prelude_python_sdk/resources/notify.py">list_subscription_phone_numbers</a>(config_id, \*\*<a href="src/prelude_python_sdk/types/notify_list_subscription_phone_numbers_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/notify_list_subscription_phone_numbers_response.py">NotifyListSubscriptionPhoneNumbersResponse</a></code>
- <code title="post /v2/notify/reply">client.notify.<a href="./src/prelude_python_sdk/resources/notify.py">reply</a>(\*\*<a href="src/prelude_python_sdk/types/notify_reply_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/notify_reply_response.py">NotifyReplyResponse</a></code>
- <code title="post /v2/notify">client.notify.<a href="./src/prelude_python_sdk/resources/notify.py">send</a>(\*\*<a href="src/prelude_python_sdk/types/notify_send_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/notify_send_response.py">NotifySendResponse</a></code>
- <code title="post /v2/notify/batch">client.notify.<a href="./src/prelude_python_sdk/resources/notify.py">send_batch</a>(\*\*<a href="src/prelude_python_sdk/types/notify_send_batch_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/notify_send_batch_response.py">NotifySendBatchResponse</a></code>

Expand All @@ -58,8 +66,29 @@ from prelude_python_sdk.types import VerificationCreateResponse, VerificationChe

Methods:

- <code title="post /v2/verification">client.verification.<a href="./src/prelude_python_sdk/resources/verification.py">create</a>(\*\*<a href="src/prelude_python_sdk/types/verification_create_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_create_response.py">VerificationCreateResponse</a></code>
- <code title="post /v2/verification/check">client.verification.<a href="./src/prelude_python_sdk/resources/verification.py">check</a>(\*\*<a href="src/prelude_python_sdk/types/verification_check_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_check_response.py">VerificationCheckResponse</a></code>
- <code title="post /v2/verification">client.verification.<a href="./src/prelude_python_sdk/resources/verification/verification.py">create</a>(\*\*<a href="src/prelude_python_sdk/types/verification_create_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_create_response.py">VerificationCreateResponse</a></code>
- <code title="post /v2/verification/check">client.verification.<a href="./src/prelude_python_sdk/resources/verification/verification.py">check</a>(\*\*<a href="src/prelude_python_sdk/types/verification_check_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_check_response.py">VerificationCheckResponse</a></code>

## Phone

### History

Types:

```python
from prelude_python_sdk.types.verification.phone import (
PhoneVerificationCarrier,
PhoneVerificationMoney,
PhoneVerificationPsd2Transaction,
HistoryRetrieveResponse,
HistoryListResponse,
)
```

Methods:

- <code title="get /v2/verification/phone/history/{id}">client.verification.phone.history.<a href="./src/prelude_python_sdk/resources/verification/phone/history.py">retrieve</a>(id) -> <a href="./src/prelude_python_sdk/types/verification/phone/history_retrieve_response.py">HistoryRetrieveResponse</a></code>
- <code title="get /v2/verification/phone/history">client.verification.phone.history.<a href="./src/prelude_python_sdk/resources/verification/phone/history.py">list</a>(\*\*<a href="src/prelude_python_sdk/types/verification/phone/history_list_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification/phone/history_list_response.py">HistoryListResponse</a></code>

# VerificationManagement

Expand All @@ -77,18 +106,37 @@ from prelude_python_sdk.types import (

Methods:

- <code title="delete /v2/verification/management/phone-numbers/{action}">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management.py">delete_phone_number</a>(action, \*\*<a href="src/prelude_python_sdk/types/verification_management_delete_phone_number_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management_delete_phone_number_response.py">VerificationManagementDeletePhoneNumberResponse</a></code>
- <code title="get /v2/verification/management/phone-numbers/{action}">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management.py">list_phone_numbers</a>(action) -> <a href="./src/prelude_python_sdk/types/verification_management_list_phone_numbers_response.py">VerificationManagementListPhoneNumbersResponse</a></code>
- <code title="get /v2/verification/management/sender-id">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management.py">list_sender_ids</a>() -> <a href="./src/prelude_python_sdk/types/verification_management_list_sender_ids_response.py">VerificationManagementListSenderIDsResponse</a></code>
- <code title="post /v2/verification/management/phone-numbers/{action}">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management.py">set_phone_number</a>(action, \*\*<a href="src/prelude_python_sdk/types/verification_management_set_phone_number_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management_set_phone_number_response.py">VerificationManagementSetPhoneNumberResponse</a></code>
- <code title="post /v2/verification/management/sender-id">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management.py">submit_sender_id</a>(\*\*<a href="src/prelude_python_sdk/types/verification_management_submit_sender_id_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management_submit_sender_id_response.py">VerificationManagementSubmitSenderIDResponse</a></code>
- <code title="delete /v2/verification/management/phone-numbers/{action}">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management/verification_management.py">delete_phone_number</a>(action, \*\*<a href="src/prelude_python_sdk/types/verification_management_delete_phone_number_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management_delete_phone_number_response.py">VerificationManagementDeletePhoneNumberResponse</a></code>
- <code title="get /v2/verification/management/phone-numbers/{action}">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management/verification_management.py">list_phone_numbers</a>(action) -> <a href="./src/prelude_python_sdk/types/verification_management_list_phone_numbers_response.py">VerificationManagementListPhoneNumbersResponse</a></code>
- <code title="get /v2/verification/management/sender-id">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management/verification_management.py">list_sender_ids</a>() -> <a href="./src/prelude_python_sdk/types/verification_management_list_sender_ids_response.py">VerificationManagementListSenderIDsResponse</a></code>
- <code title="post /v2/verification/management/phone-numbers/{action}">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management/verification_management.py">set_phone_number</a>(action, \*\*<a href="src/prelude_python_sdk/types/verification_management_set_phone_number_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management_set_phone_number_response.py">VerificationManagementSetPhoneNumberResponse</a></code>
- <code title="post /v2/verification/management/sender-id">client.verification_management.<a href="./src/prelude_python_sdk/resources/verification_management/verification_management.py">submit_sender_id</a>(\*\*<a href="src/prelude_python_sdk/types/verification_management_submit_sender_id_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management_submit_sender_id_response.py">VerificationManagementSubmitSenderIDResponse</a></code>

## Sandbox

Types:

```python
from prelude_python_sdk.types.verification_management import (
SandboxAddPhoneNumberResponse,
SandboxDeletePhoneNumberResponse,
SandboxListPhoneNumbersResponse,
)
```

Methods:

- <code title="put /v2/verification/management/phone-numbers/sandbox">client.verification_management.sandbox.<a href="./src/prelude_python_sdk/resources/verification_management/sandbox.py">add_phone_number</a>(\*\*<a href="src/prelude_python_sdk/types/verification_management/sandbox_add_phone_number_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/verification_management/sandbox_add_phone_number_response.py">SandboxAddPhoneNumberResponse</a></code>
- <code title="delete /v2/verification/management/phone-numbers/sandbox/{phone_number}">client.verification_management.sandbox.<a href="./src/prelude_python_sdk/resources/verification_management/sandbox.py">delete_phone_number</a>(phone_number) -> <a href="./src/prelude_python_sdk/types/verification_management/sandbox_delete_phone_number_response.py">SandboxDeletePhoneNumberResponse</a></code>
- <code title="get /v2/verification/management/phone-numbers/sandbox">client.verification_management.sandbox.<a href="./src/prelude_python_sdk/resources/verification_management/sandbox.py">list_phone_numbers</a>() -> <a href="./src/prelude_python_sdk/types/verification_management/sandbox_list_phone_numbers_response.py">SandboxListPhoneNumbersResponse</a></code>

# Watch

Types:

```python
from prelude_python_sdk.types import (
WatchEvaluateResponse,
WatchPredictResponse,
WatchSendEventsResponse,
WatchSendFeedbacksResponse,
Expand All @@ -97,6 +145,21 @@ from prelude_python_sdk.types import (

Methods:

- <code title="post /v2/watch/eval">client.watch.<a href="./src/prelude_python_sdk/resources/watch.py">evaluate</a>(\*\*<a href="src/prelude_python_sdk/types/watch_evaluate_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/watch_evaluate_response.py">WatchEvaluateResponse</a></code>
- <code title="post /v2/watch/predict">client.watch.<a href="./src/prelude_python_sdk/resources/watch.py">predict</a>(\*\*<a href="src/prelude_python_sdk/types/watch_predict_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/watch_predict_response.py">WatchPredictResponse</a></code>
- <code title="post /v2/watch/event">client.watch.<a href="./src/prelude_python_sdk/resources/watch.py">send_events</a>(\*\*<a href="src/prelude_python_sdk/types/watch_send_events_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/watch_send_events_response.py">WatchSendEventsResponse</a></code>
- <code title="post /v2/watch/feedback">client.watch.<a href="./src/prelude_python_sdk/resources/watch.py">send_feedbacks</a>(\*\*<a href="src/prelude_python_sdk/types/watch_send_feedbacks_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/watch_send_feedbacks_response.py">WatchSendFeedbacksResponse</a></code>

# Intel

## KYC

Types:

```python
from prelude_python_sdk.types.intel import KYCMatchResponse
```

Methods:

- <code title="post /v2/intel/kyc/match/{phone}">client.intel.kyc.<a href="./src/prelude_python_sdk/resources/intel/kyc.py">match</a>(phone, \*\*<a href="src/prelude_python_sdk/types/intel/kyc_match_params.py">params</a>) -> <a href="./src/prelude_python_sdk/types/intel/kyc_match_response.py">KYCMatchResponse</a></code>
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "prelude-python-sdk"
version = "0.14.0"
version = "0.15.0"
description = "The official Python library for the Prelude API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
46 changes: 43 additions & 3 deletions src/prelude_python_sdk/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,17 @@
)

if TYPE_CHECKING:
from .resources import watch, lookup, notify, verification, transactional, verification_management
from .resources import intel, watch, lookup, notify, verification, transactional, verification_management
from .resources.watch import WatchResource, AsyncWatchResource
from .resources.lookup import LookupResource, AsyncLookupResource
from .resources.notify import NotifyResource, AsyncNotifyResource
from .resources.verification import VerificationResource, AsyncVerificationResource
from .resources.intel.intel import IntelResource, AsyncIntelResource
from .resources.transactional import TransactionalResource, AsyncTransactionalResource
from .resources.verification_management import VerificationManagementResource, AsyncVerificationManagementResource
from .resources.verification.verification import VerificationResource, AsyncVerificationResource
from .resources.verification_management.verification_management import (
VerificationManagementResource,
AsyncVerificationManagementResource,
)

__all__ = ["Timeout", "Transport", "ProxiesTypes", "RequestOptions", "Prelude", "AsyncPrelude", "Client", "AsyncClient"]

Expand Down Expand Up @@ -154,6 +158,12 @@ def watch(self) -> WatchResource:

return WatchResource(self)

@cached_property
def intel(self) -> IntelResource:
from .resources.intel import IntelResource

return IntelResource(self)

@cached_property
def with_raw_response(self) -> PreludeWithRawResponse:
return PreludeWithRawResponse(self)
Expand Down Expand Up @@ -375,6 +385,12 @@ def watch(self) -> AsyncWatchResource:

return AsyncWatchResource(self)

@cached_property
def intel(self) -> AsyncIntelResource:
from .resources.intel import AsyncIntelResource

return AsyncIntelResource(self)

@cached_property
def with_raw_response(self) -> AsyncPreludeWithRawResponse:
return AsyncPreludeWithRawResponse(self)
Expand Down Expand Up @@ -538,6 +554,12 @@ def watch(self) -> watch.WatchResourceWithRawResponse:

return WatchResourceWithRawResponse(self._client.watch)

@cached_property
def intel(self) -> intel.IntelResourceWithRawResponse:
from .resources.intel import IntelResourceWithRawResponse

return IntelResourceWithRawResponse(self._client.intel)


class AsyncPreludeWithRawResponse:
_client: AsyncPrelude
Expand Down Expand Up @@ -589,6 +611,12 @@ def watch(self) -> watch.AsyncWatchResourceWithRawResponse:

return AsyncWatchResourceWithRawResponse(self._client.watch)

@cached_property
def intel(self) -> intel.AsyncIntelResourceWithRawResponse:
from .resources.intel import AsyncIntelResourceWithRawResponse

return AsyncIntelResourceWithRawResponse(self._client.intel)


class PreludeWithStreamedResponse:
_client: Prelude
Expand Down Expand Up @@ -640,6 +668,12 @@ def watch(self) -> watch.WatchResourceWithStreamingResponse:

return WatchResourceWithStreamingResponse(self._client.watch)

@cached_property
def intel(self) -> intel.IntelResourceWithStreamingResponse:
from .resources.intel import IntelResourceWithStreamingResponse

return IntelResourceWithStreamingResponse(self._client.intel)


class AsyncPreludeWithStreamedResponse:
_client: AsyncPrelude
Expand Down Expand Up @@ -693,6 +727,12 @@ def watch(self) -> watch.AsyncWatchResourceWithStreamingResponse:

return AsyncWatchResourceWithStreamingResponse(self._client.watch)

@cached_property
def intel(self) -> intel.AsyncIntelResourceWithStreamingResponse:
from .resources.intel import AsyncIntelResourceWithStreamingResponse

return AsyncIntelResourceWithStreamingResponse(self._client.intel)


Client = Prelude

Expand Down
2 changes: 1 addition & 1 deletion src/prelude_python_sdk/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "prelude_python_sdk"
__version__ = "0.14.0" # x-release-please-version
__version__ = "0.15.0" # x-release-please-version
14 changes: 14 additions & 0 deletions src/prelude_python_sdk/resources/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from .intel import (
IntelResource,
AsyncIntelResource,
IntelResourceWithRawResponse,
AsyncIntelResourceWithRawResponse,
IntelResourceWithStreamingResponse,
AsyncIntelResourceWithStreamingResponse,
)
from .watch import (
WatchResource,
AsyncWatchResource,
Expand Down Expand Up @@ -86,4 +94,10 @@
"AsyncWatchResourceWithRawResponse",
"WatchResourceWithStreamingResponse",
"AsyncWatchResourceWithStreamingResponse",
"IntelResource",
"AsyncIntelResource",
"IntelResourceWithRawResponse",
"AsyncIntelResourceWithRawResponse",
"IntelResourceWithStreamingResponse",
"AsyncIntelResourceWithStreamingResponse",
]
33 changes: 33 additions & 0 deletions src/prelude_python_sdk/resources/intel/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from .kyc import (
KYCResource,
AsyncKYCResource,
KYCResourceWithRawResponse,
AsyncKYCResourceWithRawResponse,
KYCResourceWithStreamingResponse,
AsyncKYCResourceWithStreamingResponse,
)
from .intel import (
IntelResource,
AsyncIntelResource,
IntelResourceWithRawResponse,
AsyncIntelResourceWithRawResponse,
IntelResourceWithStreamingResponse,
AsyncIntelResourceWithStreamingResponse,
)

__all__ = [
"KYCResource",
"AsyncKYCResource",
"KYCResourceWithRawResponse",
"AsyncKYCResourceWithRawResponse",
"KYCResourceWithStreamingResponse",
"AsyncKYCResourceWithStreamingResponse",
"IntelResource",
"AsyncIntelResource",
"IntelResourceWithRawResponse",
"AsyncIntelResourceWithRawResponse",
"IntelResourceWithStreamingResponse",
"AsyncIntelResourceWithStreamingResponse",
]
Loading
Loading