getanyapi 0.93.0__tar.gz → 0.93.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {getanyapi-0.93.0 → getanyapi-0.93.2}/PKG-INFO +1 -1
- {getanyapi-0.93.0 → getanyapi-0.93.2}/pyproject.toml +1 -1
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/__init__.py +1 -1
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/google.py +1 -1
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/maps.py +1 -1
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/pinterest.py +1 -1
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/reddit.py +2 -2
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/twitter.py +6 -6
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/web.py +2 -2
- {getanyapi-0.93.0 → getanyapi-0.93.2}/.gitignore +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/README.md +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_account.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_async_client.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_client.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_errors.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_idempotency.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_pagination.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/_transport.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/discovery_types.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/__init__.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/ahrefs.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/airbnb.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/alibaba.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/amazon.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/apollo.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/appstore.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/bluesky.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/booking.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/capterra.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/chatgpt.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/coinmarketcap.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/company.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/company_enrichment.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/company_identify.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/company_search.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/congress.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/contact_enrichment.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/douyin.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/ebay.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/email.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/email_finding.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/email_verification.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/facebook.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/fiverr.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/g2.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/gemini.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/github.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/glassdoor.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/google_ads.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/google_finance.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/google_hotels.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/google_shopping.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/hackernews.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/indeed.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/instagram.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/job_search.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/linkedin.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/mobile_phone.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/naver.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/nextdoor.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/people_search.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/perplexity.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/person.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/person_enrichment.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/pexels.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/playstore.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/polymarket.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/property_records.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/realtor.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/redfin.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/rednote.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/sec.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/semrush.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/seo.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/similarweb.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/snapchat.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/social.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/spotify.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/substack.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/technographics.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/threads.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/tiktok.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/tiktok_shop.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/tripadvisor.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/trustpilot.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/truthsocial.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/unsplash.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/upwork.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/walmart.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/weibo.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/yahoo_finance.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/yelp.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/youtube.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/zhihu.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/platforms/zillow.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/py.typed +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/src/getanyapi/types.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/conftest.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_account.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_client.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_durable_requests.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_envelope.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_errors.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_fixture_roundtrip.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_fixture_sweep.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_not_found_reason.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_pagination.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/tests/test_transport.py +0 -0
- {getanyapi-0.93.0 → getanyapi-0.93.2}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: getanyapi
|
|
3
|
-
Version: 0.93.
|
|
3
|
+
Version: 0.93.2
|
|
4
4
|
Summary: Official typed Python SDK for AnyAPI: any API, one wallet, USD, no subscriptions.
|
|
5
5
|
Project-URL: Homepage, https://getanyapi.com
|
|
6
6
|
Project-URL: Documentation, https://getanyapi.com/docs
|
|
@@ -198,7 +198,7 @@ class GoogleSearchInput(TypedDict, total=False):
|
|
|
198
198
|
ignoreSources: NotRequired[list[str]]
|
|
199
199
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
200
200
|
limit: NotRequired[int]
|
|
201
|
-
"""
|
|
201
|
+
"""Page size to ask for. Google returns about 10 organic results per page and stopped honoring larger counts in September 2025, so a limit above 10 still returns about 10. Some sources return their whole page of about 10 whatever limit says: a page is never trimmed after the call, so nextCursor always continues exactly where this response ended. To go deeper, send page (about 10 results per page, each billed as a request) or use google.search_100, which returns up to 100 ranked results in a single call for one flat charge and is cheaper past roughly 20 results. Price is flat per request. Range: 1 to 100. Default: 10."""
|
|
202
202
|
location: NotRequired[str]
|
|
203
203
|
"""Fine-grained location to localize results to, more specific than the country-level gl. Send it as an Active Canonical Name from Google's geo-target list: place, then each parent region, then country, with no space after each comma, e.g. 'New York,New York,United States', 'Austin,Texas,United States', 'London,England,United Kingdom'. Common variations are translated to that name when they point to exactly one place: spaces after commas, missing accents, a US state abbreviation ('Orlando, FL, United States'), or a skipped region ('Sydney, Australia'). A value that names no place, or more than one, is rejected rather than quietly searched from somewhere else."""
|
|
204
204
|
page: NotRequired[int]
|
|
@@ -197,7 +197,7 @@ class MapsSearchNearbyInput(TypedDict, total=False):
|
|
|
197
197
|
language: NotRequired[str]
|
|
198
198
|
"""Two-letter language code for the results (e.g. en). Default: en."""
|
|
199
199
|
limit: NotRequired[int]
|
|
200
|
-
"""
|
|
200
|
+
"""Accepted but does not change the page: every call returns one full Google Maps viewport of about 20 places, never trimmed, so nextCursor continues exactly where this response ended. Price is flat per request. Range: 1 to 20. Default: 20."""
|
|
201
201
|
preferLatencyUnderMs: NotRequired[int]
|
|
202
202
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
203
203
|
query: Required[str]
|
|
@@ -31,7 +31,7 @@ class PinterestSearchInput(TypedDict, total=False):
|
|
|
31
31
|
ignoreSources: NotRequired[list[str]]
|
|
32
32
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
33
33
|
limit: NotRequired[int]
|
|
34
|
-
"""
|
|
34
|
+
"""Page size to ask for (1-20). Some sources return their whole page of about 20 pins whatever limit says: a page is never trimmed after the call, so nextCursor continues exactly where this response ended. Range: 1 to 20."""
|
|
35
35
|
preferLatencyUnderMs: NotRequired[int]
|
|
36
36
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
37
37
|
query: Required[str]
|
|
@@ -156,7 +156,7 @@ class RedditSubredditPostsInput(TypedDict, total=False):
|
|
|
156
156
|
ignoreSources: NotRequired[list[str]]
|
|
157
157
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
158
158
|
limit: NotRequired[int]
|
|
159
|
-
"""
|
|
159
|
+
"""Page size to ask for (up to 100). Some sources honor it; others always return their whole page of about 25 posts. A page is never trimmed after the call, so pass nextCursor back as cursor to continue exactly where this response ended. Range: 1 to 100. Default: 25."""
|
|
160
160
|
preferLatencyUnderMs: NotRequired[int]
|
|
161
161
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
162
162
|
requireFields: NotRequired[
|
|
@@ -231,7 +231,7 @@ class RedditUserCommentsInput(TypedDict, total=False):
|
|
|
231
231
|
ignoreSources: NotRequired[list[str]]
|
|
232
232
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
233
233
|
limit: NotRequired[int]
|
|
234
|
-
"""
|
|
234
|
+
"""Page size to ask for (up to 100, default 25). Some sources honor it; others always return their whole page of about 25 comments. A page is never trimmed after the call, so pass nextCursor back as cursor to continue exactly where this response ended. Range: 1 to 100. Default: 25."""
|
|
235
235
|
preferLatencyUnderMs: NotRequired[int]
|
|
236
236
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
237
237
|
sort: NotRequired[Literal["new", "top", "hot", "controversial"]]
|
|
@@ -76,7 +76,7 @@ class TwitterFollowersInput(TypedDict, total=False):
|
|
|
76
76
|
ignoreSources: NotRequired[list[str]]
|
|
77
77
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
78
78
|
limit: NotRequired[int]
|
|
79
|
-
"""
|
|
79
|
+
"""Accepted but does not change the page: every call returns one full native page of followers (up to 200, depending on the source), never trimmed, so follow nextCursor to continue exactly where this response ended. Range: 1 to 100000. Default: 200."""
|
|
80
80
|
preferLatencyUnderMs: NotRequired[int]
|
|
81
81
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
82
82
|
requireFields: NotRequired[list[Literal["bio", "following"]]]
|
|
@@ -97,7 +97,7 @@ class TwitterFollowingInput(TypedDict, total=False):
|
|
|
97
97
|
ignoreSources: NotRequired[list[str]]
|
|
98
98
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
99
99
|
limit: NotRequired[int]
|
|
100
|
-
"""
|
|
100
|
+
"""Accepted but does not change the page: every call returns one full native page of followed accounts (about 50), never trimmed, so follow nextCursor to continue exactly where this response ended. Range: 1 to 100000. Default: 200."""
|
|
101
101
|
preferLatencyUnderMs: NotRequired[int]
|
|
102
102
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
103
103
|
requireFields: NotRequired[list[Literal["location"]]]
|
|
@@ -154,7 +154,7 @@ class TwitterSearchInput(TypedDict, total=False):
|
|
|
154
154
|
ignoreSources: NotRequired[list[str]]
|
|
155
155
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
156
156
|
limit: NotRequired[int]
|
|
157
|
-
"""
|
|
157
|
+
"""Page size to ask for (1-50, default 20). Some sources honor it; others always return their whole native page of about 20. A page is never trimmed after the call, so follow nextCursor to continue exactly where this response ended. Range: 1 to 50. Default: 20."""
|
|
158
158
|
preferLatencyUnderMs: NotRequired[int]
|
|
159
159
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
160
160
|
query: Required[str]
|
|
@@ -304,7 +304,7 @@ class TwitterUserTweetsInput(TypedDict, total=False):
|
|
|
304
304
|
ignoreSources: NotRequired[list[str]]
|
|
305
305
|
"""Optional. Source ids to skip for this request, taken from this endpoint's `lanes[].source.id`. The cheapest remaining source serves and the price is that of the dearest remaining source. An id that does not serve this endpoint, or that is also in `source`, is rejected as invalid input with no charge; skipping every source is rejected the same way."""
|
|
306
306
|
limit: NotRequired[int]
|
|
307
|
-
"""
|
|
307
|
+
"""Page size to ask for (1-100, default 20). Some sources honor it; others always return their whole native page of about 20 authored tweets and replies. A page is never trimmed after the call, so follow nextCursor and pass it back as cursor to continue exactly where this response ended. Range: 1 to 100. Default: 20."""
|
|
308
308
|
preferLatencyUnderMs: NotRequired[int]
|
|
309
309
|
"""Optional; omit it and routing is unchanged, with the cheapest source serving. Prefer sources whose typical response time (median over the trailing 30 days, as published on this endpoint's lane health) is under this many milliseconds; among those, the cheapest serves. This can raise your price: when the cheapest source misses the target, a faster and dearer one serves, and you are quoted and charged its price. If no source is that fast the request is still served, by whichever source offers the best speed for its price - it is never refused for being slow. Sources we have not timed are tried last. This is a preference, not a guarantee: the median describes past requests and is not a ceiling on this one, and it excludes any wait this request itself asks for. On a paginated walk it applies to the first page only: later pages stay with the source that page chose, at the price it was quoted. Minimum: 1."""
|
|
310
310
|
requireFields: NotRequired[list[Literal["isPinned"]]]
|
|
@@ -1796,7 +1796,7 @@ class TwitterNamespace:
|
|
|
1796
1796
|
records with follower, following, and post counts plus cursor pagination.
|
|
1797
1797
|
Use twitter.search for posts.
|
|
1798
1798
|
|
|
1799
|
-
Price: $0.
|
|
1799
|
+
Price: $0.0007 per request.
|
|
1800
1800
|
|
|
1801
1801
|
Example:
|
|
1802
1802
|
res = client.twitter.search_users(query="ai agents")
|
|
@@ -2336,7 +2336,7 @@ class AsyncTwitterNamespace:
|
|
|
2336
2336
|
records with follower, following, and post counts plus cursor pagination.
|
|
2337
2337
|
Use twitter.search for posts.
|
|
2338
2338
|
|
|
2339
|
-
Price: $0.
|
|
2339
|
+
Price: $0.0007 per request.
|
|
2340
2340
|
|
|
2341
2341
|
Example:
|
|
2342
2342
|
res = client.twitter.search_users(query="ai agents")
|
|
@@ -249,7 +249,7 @@ class WebNamespace:
|
|
|
249
249
|
|
|
250
250
|
Capture a real-browser screenshot of any web page URL.
|
|
251
251
|
|
|
252
|
-
Price: $0.
|
|
252
|
+
Price: $0.0013 per request.
|
|
253
253
|
|
|
254
254
|
Example:
|
|
255
255
|
res = client.web.screenshot(url="https://example.com")
|
|
@@ -330,7 +330,7 @@ class AsyncWebNamespace:
|
|
|
330
330
|
|
|
331
331
|
Capture a real-browser screenshot of any web page URL.
|
|
332
332
|
|
|
333
|
-
Price: $0.
|
|
333
|
+
Price: $0.0013 per request.
|
|
334
334
|
|
|
335
335
|
Example:
|
|
336
336
|
res = client.web.screenshot(url="https://example.com")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|