Skip to content
Open
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.52.0"
".": "0.53.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 87
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/profound/profound-25502ba3007bb25dd1af82d8e272d0467cf15ab8b57570cdcbe24b5cf62f567d.yml
openapi_spec_hash: 103914800b7e3e7c988d6dfb5f5bd9f6
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/profound/profound-6d2525ddcdad0cfbf08c011789bf9ec896ac8353cbc692b17f457be404eb5a64.yml
openapi_spec_hash: 261e4f33ccaac115058a54ffc28ad9f6
config_hash: 7304513d147b0895755069cc9f155331
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
# Changelog

## 0.53.0 (2026-07-11)

Full Changelog: [v0.52.0...v0.53.0](https://github.com/cooper-square-technologies/profound-python-sdk/compare/v0.52.0...v0.53.0)

### Features

* **api:** api update ([8f9ca07](https://github.com/cooper-square-technologies/profound-python-sdk/commit/8f9ca0757439a795ead43e408ad8a4bcc3373fd7))
* **api:** api update ([ed38871](https://github.com/cooper-square-technologies/profound-python-sdk/commit/ed388718647a7b1a8648be93c0ee9e01728ed567))

## 0.52.0 (2026-07-02)

Full Changelog: [v0.51.0...v0.52.0](https://github.com/cooper-square-technologies/profound-python-sdk/compare/v0.51.0...v0.52.0)
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "profound"
version = "0.52.0"
version = "0.53.0"
description = "The official Python library for the profound API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion src/profound/_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__ = "profound"
__version__ = "0.52.0" # x-release-please-version
__version__ = "0.53.0" # x-release-please-version
52 changes: 52 additions & 0 deletions src/profound/resources/reports/accuracy.py
Original file line number Diff line number Diff line change
Expand Up @@ -353,8 +353,21 @@ def create_cluster_example_runs(
cluster_id: str,
end_date: str,
start_date: str,
citation_categories: Optional[SequenceNotStr[str]] | Omit = omit,
comparison_end_date: Optional[str] | Omit = omit,
comparison_start_date: Optional[str] | Omit = omit,
exclude_topic_ids: bool | Omit = omit,
include_no_persona: bool | Omit = omit,
include_no_tag: bool | Omit = omit,
limit: int | Omit = omit,
offset: int | Omit = omit,
persona_ids: Optional[SequenceNotStr[str]] | Omit = omit,
platform_ids: Optional[SequenceNotStr[str]] | Omit = omit,
prompt_ids: Optional[SequenceNotStr[str]] | Omit = omit,
region_ids: Optional[SequenceNotStr[str]] | Omit = omit,
tag_filter_type: Literal["all", "any"] | Omit = omit,
tag_ids: Optional[SequenceNotStr[str]] | Omit = omit,
topic_ids: Optional[SequenceNotStr[str]] | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
Expand Down Expand Up @@ -382,8 +395,21 @@ def create_cluster_example_runs(
"cluster_id": cluster_id,
"end_date": end_date,
"start_date": start_date,
"citation_categories": citation_categories,
"comparison_end_date": comparison_end_date,
"comparison_start_date": comparison_start_date,
"exclude_topic_ids": exclude_topic_ids,
"include_no_persona": include_no_persona,
"include_no_tag": include_no_tag,
"limit": limit,
"offset": offset,
"persona_ids": persona_ids,
"platform_ids": platform_ids,
"prompt_ids": prompt_ids,
"region_ids": region_ids,
"tag_filter_type": tag_filter_type,
"tag_ids": tag_ids,
"topic_ids": topic_ids,
},
accuracy_create_cluster_example_runs_params.AccuracyCreateClusterExampleRunsParams,
),
Expand Down Expand Up @@ -1173,8 +1199,21 @@ async def create_cluster_example_runs(
cluster_id: str,
end_date: str,
start_date: str,
citation_categories: Optional[SequenceNotStr[str]] | Omit = omit,
comparison_end_date: Optional[str] | Omit = omit,
comparison_start_date: Optional[str] | Omit = omit,
exclude_topic_ids: bool | Omit = omit,
include_no_persona: bool | Omit = omit,
include_no_tag: bool | Omit = omit,
limit: int | Omit = omit,
offset: int | Omit = omit,
persona_ids: Optional[SequenceNotStr[str]] | Omit = omit,
platform_ids: Optional[SequenceNotStr[str]] | Omit = omit,
prompt_ids: Optional[SequenceNotStr[str]] | Omit = omit,
region_ids: Optional[SequenceNotStr[str]] | Omit = omit,
tag_filter_type: Literal["all", "any"] | Omit = omit,
tag_ids: Optional[SequenceNotStr[str]] | Omit = omit,
topic_ids: Optional[SequenceNotStr[str]] | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
Expand Down Expand Up @@ -1202,8 +1241,21 @@ async def create_cluster_example_runs(
"cluster_id": cluster_id,
"end_date": end_date,
"start_date": start_date,
"citation_categories": citation_categories,
"comparison_end_date": comparison_end_date,
"comparison_start_date": comparison_start_date,
"exclude_topic_ids": exclude_topic_ids,
"include_no_persona": include_no_persona,
"include_no_tag": include_no_tag,
"limit": limit,
"offset": offset,
"persona_ids": persona_ids,
"platform_ids": platform_ids,
"prompt_ids": prompt_ids,
"region_ids": region_ids,
"tag_filter_type": tag_filter_type,
"tag_ids": tag_ids,
"topic_ids": topic_ids,
},
accuracy_create_cluster_example_runs_params.AccuracyCreateClusterExampleRunsParams,
),
Expand Down
8 changes: 4 additions & 4 deletions src/profound/resources/reports/factcheck/claims.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ def query_claims(
group_by: Optional single dim to section the claims (e.g. per model). Empty → one flat
claim list.

include: Claim detail: theme, reasoning, models, evidence, citation_sources.
include: Optional per-claim detail fields to add to each claim (see options).

limit: Claims (or sections) per page; default 25.

Expand Down Expand Up @@ -144,7 +144,7 @@ def stream_claims(
group_by: Optional single dim to section the claims (e.g. per model). Empty → one flat
claim list.

include: Claim detail: theme, reasoning, models, evidence, citation_sources.
include: Optional per-claim detail fields to add to each claim (see options).

limit: Claims (or sections) per page; default 25.

Expand Down Expand Up @@ -234,7 +234,7 @@ async def query_claims(
group_by: Optional single dim to section the claims (e.g. per model). Empty → one flat
claim list.

include: Claim detail: theme, reasoning, models, evidence, citation_sources.
include: Optional per-claim detail fields to add to each claim (see options).

limit: Claims (or sections) per page; default 25.

Expand Down Expand Up @@ -302,7 +302,7 @@ async def stream_claims(
group_by: Optional single dim to section the claims (e.g. per model). Empty → one flat
claim list.

include: Claim detail: theme, reasoning, models, evidence, citation_sources.
include: Optional per-claim detail fields to add to each claim (see options).

limit: Claims (or sections) per page; default 25.

Expand Down
16 changes: 8 additions & 8 deletions src/profound/resources/reports/factcheck/factcheck.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@ def query_scores(

filter: A leaf (`field`/`op`/`value`) or an `and`/`or`/`not` group.

group_by: 1-2 of date/model/region/persona/prompt/topic/tag/theme (or one `citation`).
Empty → headline.
group_by: Up to two dimensions to slice by; empty returns the headline score. `citation`
must be alone.

limit: Rows per page; default 100.

Expand Down Expand Up @@ -150,8 +150,8 @@ def stream_scores(

filter: A leaf (`field`/`op`/`value`) or an `and`/`or`/`not` group.

group_by: 1-2 of date/model/region/persona/prompt/topic/tag/theme (or one `citation`).
Empty → headline.
group_by: Up to two dimensions to slice by; empty returns the headline score. `citation`
must be alone.

limit: Rows per page; default 100.

Expand Down Expand Up @@ -241,8 +241,8 @@ async def query_scores(

filter: A leaf (`field`/`op`/`value`) or an `and`/`or`/`not` group.

group_by: 1-2 of date/model/region/persona/prompt/topic/tag/theme (or one `citation`).
Empty → headline.
group_by: Up to two dimensions to slice by; empty returns the headline score. `citation`
must be alone.

limit: Rows per page; default 100.

Expand Down Expand Up @@ -306,8 +306,8 @@ async def stream_scores(

filter: A leaf (`field`/`op`/`value`) or an `and`/`or`/`not` group.

group_by: 1-2 of date/model/region/persona/prompt/topic/tag/theme (or one `citation`).
Empty → headline.
group_by: Up to two dimensions to slice by; empty returns the headline score. `citation`
must be alone.

limit: Rows per page; default 100.

Expand Down
12 changes: 6 additions & 6 deletions src/profound/resources/reports/reports.py
Original file line number Diff line number Diff line change
Expand Up @@ -1073,7 +1073,7 @@ def sentiment_v2(
start_date: Union[str, datetime],
comparison_end_date: Union[str, datetime, None] | Omit = omit,
comparison_start_date: Union[str, datetime, None] | Omit = omit,
date_interval: Literal["hour", "day", "week", "month", "quarter", "year", "relative_week"] | Omit = omit,
date_bucket: Literal["day", "week", "month"] | Omit = omit,
dimensions: List[
Literal[
"date", "topic", "region", "model", "prompt", "persona", "tag", "theme", "claim", "run", "asset_name"
Expand Down Expand Up @@ -1105,7 +1105,7 @@ def sentiment_v2(

comparison_start_date: Start of the previous period for delta computation.

date_interval: Date interval for the report. Only used when dimensions includes date.
date_bucket: Date bucket for the report. Only used when dimensions includes date.

dimensions: Dimensions to group the report by.

Expand Down Expand Up @@ -1135,7 +1135,7 @@ def sentiment_v2(
"start_date": start_date,
"comparison_end_date": comparison_end_date,
"comparison_start_date": comparison_start_date,
"date_interval": date_interval,
"date_bucket": date_bucket,
"dimensions": dimensions,
"filters": filters,
"order_by": order_by,
Expand Down Expand Up @@ -2837,7 +2837,7 @@ async def sentiment_v2(
start_date: Union[str, datetime],
comparison_end_date: Union[str, datetime, None] | Omit = omit,
comparison_start_date: Union[str, datetime, None] | Omit = omit,
date_interval: Literal["hour", "day", "week", "month", "quarter", "year", "relative_week"] | Omit = omit,
date_bucket: Literal["day", "week", "month"] | Omit = omit,
dimensions: List[
Literal[
"date", "topic", "region", "model", "prompt", "persona", "tag", "theme", "claim", "run", "asset_name"
Expand Down Expand Up @@ -2869,7 +2869,7 @@ async def sentiment_v2(

comparison_start_date: Start of the previous period for delta computation.

date_interval: Date interval for the report. Only used when dimensions includes date.
date_bucket: Date bucket for the report. Only used when dimensions includes date.

dimensions: Dimensions to group the report by.

Expand Down Expand Up @@ -2899,7 +2899,7 @@ async def sentiment_v2(
"start_date": start_date,
"comparison_end_date": comparison_end_date,
"comparison_start_date": comparison_start_date,
"date_interval": date_interval,
"date_bucket": date_bucket,
"dimensions": dimensions,
"filters": filters,
"order_by": order_by,
Expand Down
44 changes: 22 additions & 22 deletions src/profound/types/report_sentiment_v2_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@
"FilterSentimentV2PersonaIDFilter",
"FilterSentimentV2TagIDFilter",
"FilterSentimentV2RunIDFilter",
"FilterSentimentV2ThemeIDFilter",
"FilterSentimentV2ThemeFilter",
"FilterSentimentV2ClaimIDFilter",
"FilterSentimentV2ClaimFilter",
"FilterSentimentV2ThemeIDFilter",
"FilterSentimentV2ClaimIDFilter",
"FilterSentimentV2SentimentFilter",
]

Expand Down Expand Up @@ -53,8 +53,8 @@ class ReportSentimentV2Params(TypedDict, total=False):
comparison_start_date: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
"""Start of the previous period for delta computation."""

date_interval: Literal["hour", "day", "week", "month", "quarter", "year", "relative_week"]
"""Date interval for the report. Only used when dimensions includes date."""
date_bucket: Literal["day", "week", "month"]
"""Date bucket for the report. Only used when dimensions includes date."""

dimensions: List[
Literal["date", "topic", "region", "model", "prompt", "persona", "tag", "theme", "claim", "run", "asset_name"]
Expand Down Expand Up @@ -131,14 +131,6 @@ class FilterSentimentV2RunIDFilter(TypedDict, total=False):
value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2ThemeIDFilter(TypedDict, total=False):
field: Required[Literal["theme_id"]]

operator: Required[Literal["is", "not_is", "in", "not_in"]]

value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2ThemeFilter(TypedDict, total=False):
field: Required[Literal["theme"]]

Expand All @@ -159,14 +151,6 @@ class FilterSentimentV2ThemeFilter(TypedDict, total=False):
value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2ClaimIDFilter(TypedDict, total=False):
field: Required[Literal["claim_id"]]

operator: Required[Literal["is", "not_is", "in", "not_in"]]

value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2ClaimFilter(TypedDict, total=False):
field: Required[Literal["claim"]]

Expand All @@ -187,6 +171,22 @@ class FilterSentimentV2ClaimFilter(TypedDict, total=False):
value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2ThemeIDFilter(TypedDict, total=False):
field: Required[Literal["theme_id"]]

operator: Required[Literal["is", "not_is", "in", "not_in"]]

value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2ClaimIDFilter(TypedDict, total=False):
field: Required[Literal["claim_id"]]

operator: Required[Literal["is", "not_is", "in", "not_in"]]

value: Required[Union[str, SequenceNotStr[str]]]


class FilterSentimentV2SentimentFilter(TypedDict, total=False):
field: Required[Literal["sentiment"]]

Expand All @@ -203,9 +203,9 @@ class FilterSentimentV2SentimentFilter(TypedDict, total=False):
FilterSentimentV2PersonaIDFilter,
FilterSentimentV2TagIDFilter,
FilterSentimentV2RunIDFilter,
FilterSentimentV2ThemeIDFilter,
FilterSentimentV2ThemeFilter,
FilterSentimentV2ClaimIDFilter,
FilterSentimentV2ClaimFilter,
FilterSentimentV2ThemeIDFilter,
FilterSentimentV2ClaimIDFilter,
FilterSentimentV2SentimentFilter,
]
4 changes: 0 additions & 4 deletions src/profound/types/report_sentiment_v2_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,6 @@ class DataGroupMetadata(BaseModel):

claim: Optional[str] = None

claim_id: Optional[str] = None

created_at: Optional[str] = None

api_model_id: Optional[str] = FieldInfo(alias="model_id", default=None)
Expand All @@ -91,8 +89,6 @@ class DataGroupMetadata(BaseModel):

theme: Optional[str] = None

theme_id: Optional[str] = None

topic_id: Optional[str] = None


Expand Down
Loading
Loading