Skip to content

fix(openapi): align schemas with actual API responses - #2932

Merged
vdusek merged 1 commit into
masterfrom
fix/openapi-spec-api-deviations
Aug 31, 2026
Merged

fix(openapi): align schemas with actual API responses#2932
vdusek merged 1 commit into
masterfrom
fix/openapi-spec-api-deviations

Conversation

@vdusek

@vdusek vdusek commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

The OpenAPI spec now describes what the API actually returns: nullable generalAccess on storages and runs (and not required on Run), nullable readme/input/changelog in ActorDefinition, task input as an object or an array of objects, the private user fields optional on UserPrivateInfo, and format: date-time on DailyServiceUsages.date. These are the six deviations the JS client had to widen its generated zod schemas for in apify/apify-client-js#1016.

✍️ Drafted by Claude Code

@vdusek vdusek added adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team. labels Aug 31, 2026
@vdusek vdusek self-assigned this Aug 31, 2026
@github-actions github-actions Bot added this to the 148th sprint - Tooling team milestone Aug 31, 2026
@apify-service-account

apify-service-account commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

🗑️ Preview for this PR was deleted.

@vdusek
vdusek requested a review from Pijukatel August 31, 2026 12:38
@vdusek
vdusek marked this pull request as ready for review August 31, 2026 12:38
@vdusek
vdusek merged commit 5bac993 into master Aug 31, 2026
14 checks passed
@vdusek
vdusek deleted the fix/openapi-spec-api-deviations branch August 31, 2026 12:51
vdusek pushed a commit to apify/apify-client-python that referenced this pull request Aug 31, 2026
…d datetime usage dates (#1041)

Regenerates the models from the [published OpenAPI
specification](https://docs.apify.com/api/openapi.json)
(`v2-2026-08-27T071624Z` -> `v2-2026-08-30T172245Z`), which now
describes the API's actual behavior after apify/apify-docs#2932.
User-facing changes:

- `Task.input`, `CreateTaskRequest.input`, and `UpdateTaskRequest.input`
also accept a list of objects, which the API stores and returns.
- `DailyServiceUsages.date` is a timezone-aware `datetime` instead of
`str`.
- `Run.general_access` is optional - the API omits it for a run that
follows the owner's account setting.
- `UserPrivateInfo.plan`, `effective_platform_features`, and `is_paying`
are optional - `GET /v2/users/{userId}` responses don't carry them.

Previously, responses with any of these shapes failed model validation.

Closes #1040 (a manual test run of the same regeneration against a
pre-merge bundle of the spec).

> Generated by the [Regenerate
models](https://github.com/apify/apify-client-python/actions/workflows/on_schedule_regenerate_models.yaml)
workflow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants