Repository navigation
feat: sync with the 2026-10-20 API release - #37
Conversation
- `CascadeTier.location` accepts the `PeopleLocationFilter` dict the API takes since 2026-10-20 (at most 10 values per list, a 422 above); the list of country codes stays accepted as the legacy form. - Docs: rate limit is per plan and shared by every key of the account; 401 also means "no access to this route", 404/422/423/429 described; the search endpoints return only the matched position in `experiences`; department distribution counts jobs, not people; filters that used to be accepted and ignored now return 422.
|
|
||
| include_title: list[str] | ||
| location: NotRequired[list[str]] | ||
| location: NotRequired[PeopleLocationFilter | list[str]] |
There was a problem hiding this comment.
Existing waterfall tests omit location, so reverting this annotation to list[str] would leave them green. Add typed examples for a declared PeopleLocationFilter, a nested dict literal, and the legacy list. Also check the nested request body in a mocked endpoint test. This would protect both the new feature and existing callers.
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/blitz_api/types/filters.py
Line: 308
Comment:
**New location form lacks tests**
Existing waterfall tests omit `location`, so reverting this annotation to `list[str]` would leave them green. Add typed examples for a declared `PeopleLocationFilter`, a nested dict literal, and the legacy list. Also check the nested request body in a mocked endpoint test. This would protect both the new feature and existing callers.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
| **(1) `CascadeTier.location` is `PeopleLocationFilter | list[str]`.** Since 2026-10-20 a | ||
| tier's `location` is the `people.location` object of `search.people`, each list capped at 10; | ||
| the bare list of country codes is the legacy form, still accepted, so it stays in the union | ||
| rather than breaking existing callers. Same type in `blitz-api-js`. |
There was a problem hiding this comment.
The current JS CascadeTier.location still accepts only string[], not the object form added here. Saying the types match may lead maintainers to skip the JS follow-up. Describe that update as pending, or link the companion change once it exists.
Prompt To Fix With AI
This is a comment left during a code review.
Path: docs/CONTEXT.md
Line: 1038
Comment:
**JS parity claim is incorrect**
The current JS [`CascadeTier.location`](https://github.com/api-blitz/blitz-api-js/blob/HEAD/src/types/filters.ts#L294) still accepts only `string[]`, not the object form added here. Saying the types match may lead maintainers to skip the JS follow-up. Describe that update as pending, or link the companion change once it exists.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
Syncs the SDK with the API deployed up to the 2026-10-20 release, from the 2026-10-26 docs/SDK audit (each changed claim checked against the blitz-api code).
CascadeTier.locationtakes thePeopleLocationFilterdict (city,country_code,continent,sales_region; at most 10 values per list, a 422 above). The list of country codes stays accepted as the legacy form.docs/CONTEXT.md: the rate limit is per plan and shared by every key of the account; 401 also means "no access to this route"; 404/422/423/429 described; search endpoints return only the matched position inexperiences; department distribution counts jobs, not people; filters that used to be accepted and ignored now return 422. Sync client regenerated from the async sources.revenue_rangeandpeople.job_descriptionare not included (merged in the API, not deployed). No conflict with #36.Checks:
ruff check,ruff format --check,mypy,pyright(strict),pytest(217 pass),gen_sync.py --check,gen_enums.py --check. No live API calls.The PR appears safe to merge, with non-blocking test coverage and documentation fixes.
Fix with agent prompt
Summary
Adds object-shaped
CascadeTier.locationfilters while retaining legacy country-code lists. Updates API guidance across the README, models, and generated resource docs.Reviews (1) · Last reviewed commit: "feat: sync with the 2026-10-20 API relea..." · Reviewed by Greptile