getanyapi 0.40.2__tar.gz → 0.41.0__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.
Files changed (103) hide show
  1. {getanyapi-0.40.2 → getanyapi-0.41.0}/PKG-INFO +1 -1
  2. {getanyapi-0.40.2 → getanyapi-0.41.0}/pyproject.toml +1 -1
  3. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/__init__.py +1 -1
  4. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/google.py +4 -4
  5. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/reddit.py +74 -14
  6. getanyapi-0.41.0/src/getanyapi/platforms/substack.py +399 -0
  7. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/tiktok.py +4 -4
  8. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/youtube.py +2 -2
  9. getanyapi-0.40.2/src/getanyapi/platforms/substack.py +0 -168
  10. {getanyapi-0.40.2 → getanyapi-0.41.0}/.gitignore +0 -0
  11. {getanyapi-0.40.2 → getanyapi-0.41.0}/README.md +0 -0
  12. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_account.py +0 -0
  13. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_async_client.py +0 -0
  14. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_client.py +0 -0
  15. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_errors.py +0 -0
  16. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_idempotency.py +0 -0
  17. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_pagination.py +0 -0
  18. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/_transport.py +0 -0
  19. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/discovery_types.py +0 -0
  20. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/__init__.py +0 -0
  21. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/ahrefs.py +0 -0
  22. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/airbnb.py +0 -0
  23. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/alibaba.py +0 -0
  24. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/amazon.py +0 -0
  25. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/apollo.py +0 -0
  26. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/appstore.py +0 -0
  27. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/bluesky.py +0 -0
  28. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/booking.py +0 -0
  29. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/capterra.py +0 -0
  30. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/chatgpt.py +0 -0
  31. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/coinmarketcap.py +0 -0
  32. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/company.py +0 -0
  33. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/company_enrichment.py +0 -0
  34. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/company_search.py +0 -0
  35. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/congress.py +0 -0
  36. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/dexscreener.py +0 -0
  37. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/douyin.py +0 -0
  38. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/ebay.py +0 -0
  39. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/email.py +0 -0
  40. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/email_finding.py +0 -0
  41. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/email_verification.py +0 -0
  42. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/facebook.py +0 -0
  43. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/fiverr.py +0 -0
  44. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/g2.py +0 -0
  45. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/gemini.py +0 -0
  46. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/github.py +0 -0
  47. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/glassdoor.py +0 -0
  48. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/google_ads.py +0 -0
  49. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/google_finance.py +0 -0
  50. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/google_shopping.py +0 -0
  51. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/hackernews.py +0 -0
  52. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/indeed.py +0 -0
  53. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/instagram.py +0 -0
  54. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/job_search.py +0 -0
  55. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/linkedin.py +0 -0
  56. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/maps.py +0 -0
  57. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/mobile_phone.py +0 -0
  58. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/naver.py +0 -0
  59. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/nextdoor.py +0 -0
  60. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/people_search.py +0 -0
  61. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/perplexity.py +0 -0
  62. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/person.py +0 -0
  63. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/person_enrichment.py +0 -0
  64. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/pinterest.py +0 -0
  65. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/playstore.py +0 -0
  66. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/polymarket.py +0 -0
  67. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/realtor.py +0 -0
  68. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/redfin.py +0 -0
  69. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/rednote.py +0 -0
  70. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/sec.py +0 -0
  71. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/semrush.py +0 -0
  72. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/seo.py +0 -0
  73. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/snapchat.py +0 -0
  74. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/social.py +0 -0
  75. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/spotify.py +0 -0
  76. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/technographics.py +0 -0
  77. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/threads.py +0 -0
  78. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/tiktok_shop.py +0 -0
  79. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/tripadvisor.py +0 -0
  80. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/trustpilot.py +0 -0
  81. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/truthsocial.py +0 -0
  82. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/twitter.py +0 -0
  83. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/upwork.py +0 -0
  84. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/walmart.py +0 -0
  85. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/web.py +0 -0
  86. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/weibo.py +0 -0
  87. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/yahoo_finance.py +0 -0
  88. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/yelp.py +0 -0
  89. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/zhihu.py +0 -0
  90. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/platforms/zillow.py +0 -0
  91. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/py.typed +0 -0
  92. {getanyapi-0.40.2 → getanyapi-0.41.0}/src/getanyapi/types.py +0 -0
  93. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/conftest.py +0 -0
  94. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_account.py +0 -0
  95. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_client.py +0 -0
  96. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_durable_requests.py +0 -0
  97. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_envelope.py +0 -0
  98. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_errors.py +0 -0
  99. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_fixture_roundtrip.py +0 -0
  100. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_fixture_sweep.py +0 -0
  101. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_pagination.py +0 -0
  102. {getanyapi-0.40.2 → getanyapi-0.41.0}/tests/test_transport.py +0 -0
  103. {getanyapi-0.40.2 → getanyapi-0.41.0}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: getanyapi
3
- Version: 0.40.2
3
+ Version: 0.41.0
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
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "getanyapi"
7
- version = "0.40.2"
7
+ version = "0.41.0"
8
8
  description = "Official typed Python SDK for AnyAPI: any API, one wallet, USD, no subscriptions."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -54,7 +54,7 @@ from .types import (
54
54
  unwrap,
55
55
  )
56
56
 
57
- __version__ = "0.40.2"
57
+ __version__ = "0.41.0"
58
58
 
59
59
  __all__ = [
60
60
  # clients + top-level functions
@@ -538,7 +538,7 @@ class GoogleNamespace:
538
538
  Mode composes the answer at search time, so repeat calls on one prompt can
539
539
  differ in wording and in which sources are cited.
540
540
 
541
- Price: $0.0007 per request.
541
+ Price: $0.00006 per request plus $0.0033 per result (maximum $0.00336).
542
542
 
543
543
  Example:
544
544
  res = client.google.ai_mode(prompt="What is AnyAPI at getanyapi.com, and what does it offer?")
@@ -705,7 +705,7 @@ class GoogleNamespace:
705
705
  as cursor to walk further, or use google.search_100 for up to 100 ranked
706
706
  results in one call, which is cheaper past roughly 20 results.
707
707
 
708
- Price: $0.0009 per request.
708
+ Price: $0.0005 per request.
709
709
 
710
710
  Example:
711
711
  res = client.google.search(gl="us", hl="en", limit=10, query="best coffee maker")
@@ -803,7 +803,7 @@ class AsyncGoogleNamespace:
803
803
  Mode composes the answer at search time, so repeat calls on one prompt can
804
804
  differ in wording and in which sources are cited.
805
805
 
806
- Price: $0.0007 per request.
806
+ Price: $0.00006 per request plus $0.0033 per result (maximum $0.00336).
807
807
 
808
808
  Example:
809
809
  res = client.google.ai_mode(prompt="What is AnyAPI at getanyapi.com, and what does it offer?")
@@ -970,7 +970,7 @@ class AsyncGoogleNamespace:
970
970
  as cursor to walk further, or use google.search_100 for up to 100 ranked
971
971
  results in one call, which is cheaper past roughly 20 results.
972
972
 
973
- Price: $0.0009 per request.
973
+ Price: $0.0005 per request.
974
974
 
975
975
  Example:
976
976
  res = client.google.search(gl="us", hl="en", limit=10, query="best coffee maker")
@@ -181,6 +181,16 @@ class RedditPostData(BaseModel):
181
181
  default=None,
182
182
  description="Preview image for the post, when Reddit generated one. Reddit signs this URL and it is time-limited, so fetch it promptly rather than storing it; the query string carries the signature and must be kept intact. Empty when the post has no preview image.",
183
183
  )
184
+ is_archived: bool | None = Field(
185
+ default=None,
186
+ alias="isArchived",
187
+ description="True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.",
188
+ )
189
+ is_locked: bool | None = Field(
190
+ default=None,
191
+ alias="isLocked",
192
+ description="True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.",
193
+ )
184
194
  is_nsfw: bool | None = Field(
185
195
  default=None,
186
196
  alias="isNsfw",
@@ -379,6 +389,16 @@ class RedditSearchPost(BaseModel):
379
389
  id: str = Field(
380
390
  description="Reddit post ID (base-36, without the t3_ prefix). Populated whenever the provider has data for the entity."
381
391
  )
392
+ is_archived: bool | None = Field(
393
+ default=None,
394
+ alias="isArchived",
395
+ description="True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.",
396
+ )
397
+ is_locked: bool | None = Field(
398
+ default=None,
399
+ alias="isLocked",
400
+ description="True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.",
401
+ )
382
402
  media: list[RedditSearchMedia] | None = Field(
383
403
  default=None,
384
404
  description="Photo, video, and GIF attachments on the post. Empty when the post has none.",
@@ -476,6 +496,16 @@ class RedditSubredditPostsPost(BaseModel):
476
496
  id: str = Field(
477
497
  description="Reddit post ID (base-36, without the t3_ prefix). Populated whenever the provider has data for the entity."
478
498
  )
499
+ is_archived: bool | None = Field(
500
+ default=None,
501
+ alias="isArchived",
502
+ description="True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.",
503
+ )
504
+ is_locked: bool | None = Field(
505
+ default=None,
506
+ alias="isLocked",
507
+ description="True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.",
508
+ )
479
509
  num_comments: int = Field(
480
510
  alias="numComments", description="Total number of comments on the post."
481
511
  )
@@ -523,6 +553,16 @@ class RedditSubredditSearchPost(BaseModel):
523
553
  id: str = Field(
524
554
  description="Reddit post ID (base-36, without the t3_ prefix). Populated whenever the provider has data for the entity."
525
555
  )
556
+ is_archived: bool | None = Field(
557
+ default=None,
558
+ alias="isArchived",
559
+ description="True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.",
560
+ )
561
+ is_locked: bool | None = Field(
562
+ default=None,
563
+ alias="isLocked",
564
+ description="True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.",
565
+ )
526
566
  nsfw: bool = Field(description="Whether the post is marked NSFW (over 18).")
527
567
  num_comments: int = Field(
528
568
  alias="numComments", description="Total number of comments on the post."
@@ -571,6 +611,16 @@ class RedditTrendingPostsPost(BaseModel):
571
611
  id: str = Field(
572
612
  description="Reddit post ID (base-36, without the t3_ prefix). Populated whenever the provider has data for the entity."
573
613
  )
614
+ is_archived: bool | None = Field(
615
+ default=None,
616
+ alias="isArchived",
617
+ description="True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.",
618
+ )
619
+ is_locked: bool | None = Field(
620
+ default=None,
621
+ alias="isLocked",
622
+ description="True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.",
623
+ )
574
624
  num_comments: int = Field(
575
625
  alias="numComments", description="Total number of comments on the post."
576
626
  )
@@ -668,6 +718,16 @@ class RedditUserPostsPost(BaseModel):
668
718
  id: str = Field(
669
719
  description="Reddit post ID (base-36, without the t3_ prefix). Populated whenever the provider has data for the entity."
670
720
  )
721
+ is_archived: bool | None = Field(
722
+ default=None,
723
+ alias="isArchived",
724
+ description="True when Reddit has archived the thread, which blocks new comments and votes. Archiving is a per-community setting, so an old thread is not necessarily archived. Absent when the source that served this request does not report it, which means unknown rather than false.",
725
+ )
726
+ is_locked: bool | None = Field(
727
+ default=None,
728
+ alias="isLocked",
729
+ description="True when a moderator has locked the thread, which blocks new comments. Absent when the source that served this request does not report it, which means unknown rather than false.",
730
+ )
671
731
  media: list[RedditUserPostsMedia] | None = Field(
672
732
  default=None,
673
733
  description="Photo, video, and GIF attachments on the post. Empty when the post has none.",
@@ -751,7 +811,7 @@ class RedditNamespace:
751
811
  List the top-level comments on a Reddit post by URL (author, body, score,
752
812
  timestamp).
753
813
 
754
- Price: $0.0012 per request.
814
+ Price: $0.0009 per request.
755
815
 
756
816
  Example:
757
817
  res = client.reddit.post_comments(url="https://www.reddit.com/r/IAmA/comments/z1c9z/i_am_barack_obama_president_of_the_united_states/")
@@ -835,7 +895,7 @@ class RedditNamespace:
835
895
 
836
896
  Search Reddit posts across all subreddits by query.
837
897
 
838
- Price: $0.0005 per request.
898
+ Price: $0.00045 per request.
839
899
 
840
900
  Example:
841
901
  res = client.reddit.search(query="mechanical keyboard")
@@ -879,7 +939,7 @@ class RedditNamespace:
879
939
  Fetch a subreddit's metadata (weekly active users, description, and
880
940
  category).
881
941
 
882
- Price: $0.0012 per request.
942
+ Price: $0.00045 per request.
883
943
 
884
944
  Example:
885
945
  res = client.reddit.subreddit_details(subreddit="programming")
@@ -899,7 +959,7 @@ class RedditNamespace:
899
959
 
900
960
  Fetch posts from a subreddit listing (hot, new, or top).
901
961
 
902
- Price: $0.0005 per request.
962
+ Price: $0.00045 per request.
903
963
 
904
964
  Example:
905
965
  res = client.reddit.subreddit_posts(limit=5, subreddit="programming")
@@ -942,7 +1002,7 @@ class RedditNamespace:
942
1002
 
943
1003
  Search posts within a single subreddit by query, sort, and timeframe.
944
1004
 
945
- Price: $0.0005 per request.
1005
+ Price: $0.00045 per request.
946
1006
 
947
1007
  Example:
948
1008
  res = client.reddit.subreddit_search(query="push ups", subreddit="Fitness")
@@ -1011,7 +1071,7 @@ class RedditNamespace:
1011
1071
  permalink; use reddit.post_comments for full comment bodies and comment URLs
1012
1072
  on a given post.
1013
1073
 
1014
- Price: $0.0012 per request.
1074
+ Price: $0.0009 per request.
1015
1075
 
1016
1076
  Example:
1017
1077
  res = client.reddit.user_comments(username="spez")
@@ -1055,7 +1115,7 @@ class RedditNamespace:
1055
1115
  List a Reddit user's posts by username, sorted by new, top, hot, or
1056
1116
  controversial, with cursor pagination.
1057
1117
 
1058
- Price: $0.0005 per request.
1118
+ Price: $0.00045 per request.
1059
1119
 
1060
1120
  Example:
1061
1121
  res = client.reddit.user_posts(username="spez")
@@ -1124,7 +1184,7 @@ class AsyncRedditNamespace:
1124
1184
  List the top-level comments on a Reddit post by URL (author, body, score,
1125
1185
  timestamp).
1126
1186
 
1127
- Price: $0.0012 per request.
1187
+ Price: $0.0009 per request.
1128
1188
 
1129
1189
  Example:
1130
1190
  res = client.reddit.post_comments(url="https://www.reddit.com/r/IAmA/comments/z1c9z/i_am_barack_obama_president_of_the_united_states/")
@@ -1208,7 +1268,7 @@ class AsyncRedditNamespace:
1208
1268
 
1209
1269
  Search Reddit posts across all subreddits by query.
1210
1270
 
1211
- Price: $0.0005 per request.
1271
+ Price: $0.00045 per request.
1212
1272
 
1213
1273
  Example:
1214
1274
  res = client.reddit.search(query="mechanical keyboard")
@@ -1252,7 +1312,7 @@ class AsyncRedditNamespace:
1252
1312
  Fetch a subreddit's metadata (weekly active users, description, and
1253
1313
  category).
1254
1314
 
1255
- Price: $0.0012 per request.
1315
+ Price: $0.00045 per request.
1256
1316
 
1257
1317
  Example:
1258
1318
  res = client.reddit.subreddit_details(subreddit="programming")
@@ -1272,7 +1332,7 @@ class AsyncRedditNamespace:
1272
1332
 
1273
1333
  Fetch posts from a subreddit listing (hot, new, or top).
1274
1334
 
1275
- Price: $0.0005 per request.
1335
+ Price: $0.00045 per request.
1276
1336
 
1277
1337
  Example:
1278
1338
  res = client.reddit.subreddit_posts(limit=5, subreddit="programming")
@@ -1315,7 +1375,7 @@ class AsyncRedditNamespace:
1315
1375
 
1316
1376
  Search posts within a single subreddit by query, sort, and timeframe.
1317
1377
 
1318
- Price: $0.0005 per request.
1378
+ Price: $0.00045 per request.
1319
1379
 
1320
1380
  Example:
1321
1381
  res = client.reddit.subreddit_search(query="push ups", subreddit="Fitness")
@@ -1384,7 +1444,7 @@ class AsyncRedditNamespace:
1384
1444
  permalink; use reddit.post_comments for full comment bodies and comment URLs
1385
1445
  on a given post.
1386
1446
 
1387
- Price: $0.0012 per request.
1447
+ Price: $0.0009 per request.
1388
1448
 
1389
1449
  Example:
1390
1450
  res = client.reddit.user_comments(username="spez")
@@ -1428,7 +1488,7 @@ class AsyncRedditNamespace:
1428
1488
  List a Reddit user's posts by username, sorted by new, top, hot, or
1429
1489
  controversial, with cursor pagination.
1430
1490
 
1431
- Price: $0.0005 per request.
1491
+ Price: $0.00045 per request.
1432
1492
 
1433
1493
  Example:
1434
1494
  res = client.reddit.user_posts(username="spez")