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.26.0"
".": "0.27.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: 40
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sent/sent-dm-f11b6b07e154570d2c9298e1a196f6a17d1459b87c1c9f836d476e1876e8bbe5.yml
openapi_spec_hash: 969f82ebb2d5e6be2af05c56c4dea585
config_hash: 7fe4b7f38470a511342b783de698aa99
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sent/sent-dm-fe1e81e2407f2e52f3fc9a363e99b159ad4b083ca24e4db8478e2a4bc5875b94.yml
openapi_spec_hash: 90e3e518794303019778fd96c1ff34bf
config_hash: 8d0035ba4c28a531c0eac7ba5047843d
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.27.0 (2026-05-14)

Full Changelog: [v0.26.0...v0.27.0](https://github.com/sentdm/sent-dm-python/compare/v0.26.0...v0.27.0)

### Features

* **api:** manual updates ([414a251](https://github.com/sentdm/sent-dm-python/commit/414a251702046d639a60b1a939435c275ffdfa02))

## 0.26.0 (2026-05-14)

Full Changelog: [v0.25.0...v0.26.0](https://github.com/sentdm/sent-dm-python/compare/v0.25.0...v0.26.0)
Expand Down
99 changes: 56 additions & 43 deletions api.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "sentdm"
version = "0.26.0"
version = "0.27.0"
description = "The official Python library for the Sent API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion src/sent_dm/_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__ = "sent_dm"
__version__ = "0.26.0" # x-release-please-version
__version__ = "0.27.0" # x-release-please-version
28 changes: 13 additions & 15 deletions src/sent_dm/resources/contacts.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,7 @@
)
from .._base_client import make_request_options
from ..types.contact_list_response import ContactListResponse
from ..types.contact_create_response import ContactCreateResponse
from ..types.contact_update_response import ContactUpdateResponse
from ..types.contact_retrieve_response import ContactRetrieveResponse
from ..types.api_response_of_contact import APIResponseOfContact

__all__ = ["ContactsResource", "AsyncContactsResource"]

Expand Down Expand Up @@ -61,7 +59,7 @@ def create(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> ContactCreateResponse:
) -> APIResponseOfContact:
"""
Creates a new contact by phone number and associates it with the authenticated
customer.
Expand Down Expand Up @@ -101,7 +99,7 @@ def create(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=ContactCreateResponse,
cast_to=APIResponseOfContact,
)

def retrieve(
Expand All @@ -115,7 +113,7 @@ def retrieve(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> ContactRetrieveResponse:
) -> APIResponseOfContact:
"""Retrieves a specific contact by their unique identifier.

Returns detailed
Expand All @@ -139,7 +137,7 @@ def retrieve(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=ContactRetrieveResponse,
cast_to=APIResponseOfContact,
)

def update(
Expand All @@ -157,7 +155,7 @@ def update(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> ContactUpdateResponse:
) -> APIResponseOfContact:
"""Updates a contact's default channel and/or opt-out status.

Inherited contacts
Expand Down Expand Up @@ -204,7 +202,7 @@ def update(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=ContactUpdateResponse,
cast_to=APIResponseOfContact,
)

def list(
Expand Down Expand Up @@ -348,7 +346,7 @@ async def create(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> ContactCreateResponse:
) -> APIResponseOfContact:
"""
Creates a new contact by phone number and associates it with the authenticated
customer.
Expand Down Expand Up @@ -388,7 +386,7 @@ async def create(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=ContactCreateResponse,
cast_to=APIResponseOfContact,
)

async def retrieve(
Expand All @@ -402,7 +400,7 @@ async def retrieve(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> ContactRetrieveResponse:
) -> APIResponseOfContact:
"""Retrieves a specific contact by their unique identifier.

Returns detailed
Expand All @@ -426,7 +424,7 @@ async def retrieve(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=ContactRetrieveResponse,
cast_to=APIResponseOfContact,
)

async def update(
Expand All @@ -444,7 +442,7 @@ async def update(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> ContactUpdateResponse:
) -> APIResponseOfContact:
"""Updates a contact's default channel and/or opt-out status.

Inherited contacts
Expand Down Expand Up @@ -491,7 +489,7 @@ async def update(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=ContactUpdateResponse,
cast_to=APIResponseOfContact,
)

async def list(
Expand Down
28 changes: 14 additions & 14 deletions src/sent_dm/resources/profiles/campaigns.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@
)
from ..._base_client import make_request_options
from ...types.profiles import campaign_create_params, campaign_delete_params, campaign_update_params
from ...types.profiles.campaign_data_param import CampaignDataParam
from ...types.profiles.campaign_list_response import CampaignListResponse
from ...types.profiles.campaign_create_response import CampaignCreateResponse
from ...types.profiles.campaign_update_response import CampaignUpdateResponse
from ...types.profiles.api_response_of_tcr_campaign_with_use_cases import APIResponseOfTcrCampaignWithUseCases

__all__ = ["CampaignsResource", "AsyncCampaignsResource"]

Expand Down Expand Up @@ -49,7 +49,7 @@ def create(
self,
profile_id: str,
*,
campaign: campaign_create_params.Campaign,
campaign: CampaignDataParam,
sandbox: bool | Omit = omit,
idempotency_key: str | Omit = omit,
x_profile_id: str | Omit = omit,
Expand All @@ -59,7 +59,7 @@ def create(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> CampaignCreateResponse:
) -> APIResponseOfTcrCampaignWithUseCases:
"""Creates a new campaign scoped under the brand of the specified profile.

Each
Expand Down Expand Up @@ -102,15 +102,15 @@ def create(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=CampaignCreateResponse,
cast_to=APIResponseOfTcrCampaignWithUseCases,
)

def update(
self,
campaign_id: str,
*,
profile_id: str,
campaign: campaign_update_params.Campaign,
campaign: CampaignDataParam,
sandbox: bool | Omit = omit,
idempotency_key: str | Omit = omit,
x_profile_id: str | Omit = omit,
Expand All @@ -120,7 +120,7 @@ def update(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> CampaignUpdateResponse:
) -> APIResponseOfTcrCampaignWithUseCases:
"""Updates an existing campaign under the brand of the specified profile.

Cannot
Expand Down Expand Up @@ -167,7 +167,7 @@ def update(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=CampaignUpdateResponse,
cast_to=APIResponseOfTcrCampaignWithUseCases,
)

def list(
Expand Down Expand Up @@ -281,7 +281,7 @@ async def create(
self,
profile_id: str,
*,
campaign: campaign_create_params.Campaign,
campaign: CampaignDataParam,
sandbox: bool | Omit = omit,
idempotency_key: str | Omit = omit,
x_profile_id: str | Omit = omit,
Expand All @@ -291,7 +291,7 @@ async def create(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> CampaignCreateResponse:
) -> APIResponseOfTcrCampaignWithUseCases:
"""Creates a new campaign scoped under the brand of the specified profile.

Each
Expand Down Expand Up @@ -334,15 +334,15 @@ async def create(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=CampaignCreateResponse,
cast_to=APIResponseOfTcrCampaignWithUseCases,
)

async def update(
self,
campaign_id: str,
*,
profile_id: str,
campaign: campaign_update_params.Campaign,
campaign: CampaignDataParam,
sandbox: bool | Omit = omit,
idempotency_key: str | Omit = omit,
x_profile_id: str | Omit = omit,
Expand All @@ -352,7 +352,7 @@ async def update(
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> CampaignUpdateResponse:
) -> APIResponseOfTcrCampaignWithUseCases:
"""Updates an existing campaign under the brand of the specified profile.

Cannot
Expand Down Expand Up @@ -399,7 +399,7 @@ async def update(
options=make_request_options(
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
),
cast_to=CampaignUpdateResponse,
cast_to=APIResponseOfTcrCampaignWithUseCases,
)

async def list(
Expand Down
Loading
Loading