Skip to content

Commit 9719426

Browse files
chrisdengsogithub-actions[bot]
authored andcommitted
feat!: v3.0.0, breaking API changes
1 parent 5aac460 commit 9719426

92 files changed

Lines changed: 717 additions & 663 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.speakeasy/gen.lock‎

Lines changed: 90 additions & 90 deletions
Large diffs are not rendered by default.

‎.speakeasy/gen.yaml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ generation:
3232
generateNewTests: true
3333
skipResponseBodyAssertions: false
3434
python:
35-
version: 2.1.1
35+
version: 3.0.0
3636
additionalDependencies:
3737
dev: {}
3838
main: {}

‎.speakeasy/openapi.json‎

Lines changed: 41 additions & 40 deletions
Large diffs are not rendered by default.

‎CHANGELOG.md‎

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,53 @@
11
# Changelog
22

3+
## 3.0.0 (2026-10-22)
4+
5+
Full Changelog: [v2.1.1...v3.0.0](https://github.com/moderation-api/sdk-python/compare/v2.1.1...v3.0.0)
6+
7+
### ⚠ Breaking changes
8+
9+
- `GET /actions`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
10+
- `POST /actions`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
11+
- `POST /actions/execute`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
12+
- `POST /actions/{actionId}/execute`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
13+
- `DELETE /actions/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
14+
- `GET /actions/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
15+
- `PUT /actions/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
16+
- `GET /auth`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
17+
- `POST /auth`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
18+
- `GET /authors`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
19+
- `POST /authors`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
20+
- `DELETE /authors/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
21+
- `GET /authors/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
22+
- `PUT /authors/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
23+
- `DELETE /channels/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
24+
- `PUT /channels/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
25+
- `POST /channels/{id}/duplicate`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
26+
- `POST /moderate`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
27+
- `POST /moderate/image`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
28+
- `POST /moderate/text`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
29+
- `POST /projects`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
30+
- `PUT /projects/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
31+
- `POST /projects/{id}/duplicate`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
32+
- `POST /projects/{projectId}/channels`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
33+
- `GET /queue/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
34+
- `GET /queue/{id}/items`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
35+
- `POST /queue/{id}/items/{itemId}/resolve`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
36+
- `POST /queue/{id}/items/{itemId}/unresolve`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
37+
- `GET /queue/{id}/stats`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
38+
- `POST /webhooks`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
39+
- `PUT /webhooks/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
40+
- `GET /wordlist`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
41+
- `GET /wordlist/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
42+
- `PUT /wordlist/{id}`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
43+
- `GET /wordlist/{id}/embedding-status`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
44+
- `DELETE /wordlist/{id}/words`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
45+
- `POST /wordlist/{id}/words`: added the new `project_name_ambiguous` enum value to the `code` response property for the response status `400`
46+
47+
### API changes
48+
49+
- a breaking change was detected but the version is still `1.1.0`
50+
351
## 2.1.1 (2026-10-22)
452

553
Full Changelog: [v2.1.0...v2.1.1](https://github.com/moderation-api/sdk-python/compare/v2.1.0...v2.1.1)

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,9 +309,9 @@ with ModerationAPI(
309309
Moderation API has two kinds of API keys:
310310

311311
- A **project key** works with one project: content, authors, review queues, actions, wordlists, webhooks and the account. Most integrations need only this key.
312-
- An **organization key** works with the [management API](https://docs.moderationapi.com/api-reference/management-api): projects and channels. The management API is available on Enterprise plans.
312+
- An **organization key** works with the [management API](https://docs.moderationapi.com/api-reference/management-api): projects and channels. It can also use any project's endpoints: name the project with `projectId`.
313313

314-
Each key works only with its own endpoints. With the wrong key the API returns `403` with the code `project_key_required` or `organization_key_required`. If you use both, create one client for each key:
314+
A project key can't call the management API: the API returns `403` with the code `organization_key_required`. If you use both kinds of key, create one client for each:
315315

316316
```python
317317
import os

0 commit comments

Comments
 (0)