getanyapi 0.1.0__py3-none-any.whl

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.
Files changed (68) hide show
  1. getanyapi/__init__.py +76 -0
  2. getanyapi/_account.py +132 -0
  3. getanyapi/_async_client.py +215 -0
  4. getanyapi/_client.py +274 -0
  5. getanyapi/_errors.py +115 -0
  6. getanyapi/_pagination.py +295 -0
  7. getanyapi/_transport.py +239 -0
  8. getanyapi/platforms/__init__.py +89 -0
  9. getanyapi/platforms/ahrefs.py +384 -0
  10. getanyapi/platforms/airbnb.py +120 -0
  11. getanyapi/platforms/alibaba.py +95 -0
  12. getanyapi/platforms/amazon.py +442 -0
  13. getanyapi/platforms/appstore.py +95 -0
  14. getanyapi/platforms/bluesky.py +215 -0
  15. getanyapi/platforms/booking.py +128 -0
  16. getanyapi/platforms/coinmarketcap.py +113 -0
  17. getanyapi/platforms/congress.py +106 -0
  18. getanyapi/platforms/dexscreener.py +104 -0
  19. getanyapi/platforms/ebay.py +215 -0
  20. getanyapi/platforms/email.py +166 -0
  21. getanyapi/platforms/facebook.py +2324 -0
  22. getanyapi/platforms/fiverr.py +122 -0
  23. getanyapi/platforms/github.py +954 -0
  24. getanyapi/platforms/glassdoor.py +93 -0
  25. getanyapi/platforms/google.py +232 -0
  26. getanyapi/platforms/google_ads.py +380 -0
  27. getanyapi/platforms/google_finance.py +170 -0
  28. getanyapi/platforms/google_shopping.py +103 -0
  29. getanyapi/platforms/hackernews.py +276 -0
  30. getanyapi/platforms/indeed.py +114 -0
  31. getanyapi/platforms/instagram.py +1868 -0
  32. getanyapi/platforms/linkedin.py +1064 -0
  33. getanyapi/platforms/maps.py +412 -0
  34. getanyapi/platforms/pandaexpress.py +262 -0
  35. getanyapi/platforms/person.py +96 -0
  36. getanyapi/platforms/pinterest.py +96 -0
  37. getanyapi/platforms/playstore.py +99 -0
  38. getanyapi/platforms/polymarket.py +109 -0
  39. getanyapi/platforms/realtor.py +104 -0
  40. getanyapi/platforms/reddit.py +582 -0
  41. getanyapi/platforms/redfin.py +95 -0
  42. getanyapi/platforms/rednote.py +807 -0
  43. getanyapi/platforms/sec.py +118 -0
  44. getanyapi/platforms/semrush.py +358 -0
  45. getanyapi/platforms/snapchat.py +146 -0
  46. getanyapi/platforms/social.py +105 -0
  47. getanyapi/platforms/spotify.py +588 -0
  48. getanyapi/platforms/substack.py +142 -0
  49. getanyapi/platforms/threads.py +358 -0
  50. getanyapi/platforms/tiktok.py +1827 -0
  51. getanyapi/platforms/tiktok_shop.py +536 -0
  52. getanyapi/platforms/tripadvisor.py +180 -0
  53. getanyapi/platforms/trustpilot.py +114 -0
  54. getanyapi/platforms/truthsocial.py +226 -0
  55. getanyapi/platforms/twitter.py +798 -0
  56. getanyapi/platforms/upwork.py +119 -0
  57. getanyapi/platforms/walmart.py +93 -0
  58. getanyapi/platforms/web.py +264 -0
  59. getanyapi/platforms/whatsapp.py +91 -0
  60. getanyapi/platforms/yahoo_finance.py +95 -0
  61. getanyapi/platforms/yelp.py +141 -0
  62. getanyapi/platforms/youtube.py +1452 -0
  63. getanyapi/platforms/zillow.py +218 -0
  64. getanyapi/py.typed +0 -0
  65. getanyapi/types.py +170 -0
  66. getanyapi-0.1.0.dist-info/METADATA +155 -0
  67. getanyapi-0.1.0.dist-info/RECORD +68 -0
  68. getanyapi-0.1.0.dist-info/WHEEL +4 -0
@@ -0,0 +1,122 @@
1
+ # Generated - do not edit. Regenerate with: pnpm generate
2
+ """Generated namespace module for the fiverr platform."""
3
+
4
+ from __future__ import annotations
5
+
6
+ from typing import TYPE_CHECKING
7
+
8
+ from pydantic import BaseModel, ConfigDict, Field
9
+ from typing_extensions import NotRequired, Required, TypedDict, Unpack
10
+
11
+ from ..types import RequestOptions, RunResult
12
+
13
+ if TYPE_CHECKING:
14
+ from .._async_client import AsyncAnyAPI
15
+ from .._client import AnyAPI
16
+
17
+
18
+ class FiverrSearchInput(TypedDict, total=False):
19
+ """Input for Fiverr Gig Search."""
20
+
21
+ limit: NotRequired[int]
22
+ """Maximum number of results to return (1-20, default 20). You are billed per result returned, so a lower limit costs less. Range: 1 to 20."""
23
+ url: Required[str]
24
+ """Fiverr search or category page URL to extract gigs from."""
25
+
26
+
27
+ class FiverrSearchData(BaseModel):
28
+ items: list[FiverrSearchItem] = Field(
29
+ description="Gig records from the search or category URL. Operators may return additional fields beyond those documented here."
30
+ )
31
+
32
+
33
+ class FiverrSearchItem(BaseModel):
34
+ model_config = ConfigDict(extra="allow", populate_by_name=True)
35
+
36
+ duration: int | None = Field(default=None, description="Delivery time in days.")
37
+ gig_id: str = Field(alias="gigId", description="Stable Fiverr gig identifier.")
38
+ gig_url: str = Field(
39
+ alias="gigUrl", description="Canonical Fiverr URL for the gig."
40
+ )
41
+ image: str | None = Field(default=None, description="Primary gig thumbnail URL.")
42
+ price: float | None = Field(default=None, description="Starting price in USD.")
43
+ seller_country: str | None = Field(
44
+ default=None, alias="sellerCountry", description="Seller country code."
45
+ )
46
+ seller_display_name: str | None = Field(
47
+ default=None, alias="sellerDisplayName", description="Seller display name."
48
+ )
49
+ seller_level: str | None = Field(
50
+ default=None, alias="sellerLevel", description="Fiverr seller level."
51
+ )
52
+ seller_name: str | None = Field(
53
+ default=None, alias="sellerName", description="Seller username."
54
+ )
55
+ seller_rating_count: int | None = Field(
56
+ default=None, alias="sellerRatingCount", description="Number of seller ratings."
57
+ )
58
+ seller_rating_score: float | None = Field(
59
+ default=None, alias="sellerRatingScore", description="Average seller rating."
60
+ )
61
+ seller_url: str | None = Field(
62
+ default=None, alias="sellerUrl", description="Seller profile URL."
63
+ )
64
+ title: str = Field(description="Gig headline.")
65
+
66
+
67
+ class FiverrNamespace:
68
+ """Typed methods for this platform. Attached lazily to the client."""
69
+
70
+ def __init__(self, client: "AnyAPI") -> None:
71
+ self._client = client
72
+
73
+ def search(
74
+ self,
75
+ *,
76
+ options: RequestOptions | None = None,
77
+ **input: Unpack[FiverrSearchInput],
78
+ ) -> RunResult[FiverrSearchData]:
79
+ """Fiverr Gig Search
80
+
81
+ Extract Fiverr gig listings from any search or category URL - titles,
82
+ sellers, ratings, and pricing as structured JSON with transparent
83
+ per-request USD pricing.
84
+
85
+ Price: $0.0015 per result.
86
+
87
+ Example:
88
+ res = client.fiverr.search(limit=3, url="https://www.fiverr.com/search/gigs?query=logo%20design")
89
+ """
90
+ raw = self._client._run_raw( # pyright: ignore[reportPrivateUsage]
91
+ "fiverr.search", dict(input), options
92
+ )
93
+ return RunResult[FiverrSearchData].model_validate(raw)
94
+
95
+
96
+ class AsyncFiverrNamespace:
97
+ """Typed methods for this platform. Attached lazily to the client."""
98
+
99
+ def __init__(self, client: "AsyncAnyAPI") -> None:
100
+ self._client = client
101
+
102
+ async def search(
103
+ self,
104
+ *,
105
+ options: RequestOptions | None = None,
106
+ **input: Unpack[FiverrSearchInput],
107
+ ) -> RunResult[FiverrSearchData]:
108
+ """Fiverr Gig Search
109
+
110
+ Extract Fiverr gig listings from any search or category URL - titles,
111
+ sellers, ratings, and pricing as structured JSON with transparent
112
+ per-request USD pricing.
113
+
114
+ Price: $0.0015 per result.
115
+
116
+ Example:
117
+ res = client.fiverr.search(limit=3, url="https://www.fiverr.com/search/gigs?query=logo%20design")
118
+ """
119
+ raw = await self._client._arun_raw( # pyright: ignore[reportPrivateUsage]
120
+ "fiverr.search", dict(input), options
121
+ )
122
+ return RunResult[FiverrSearchData].model_validate(raw)