getanyapi 0.66.4__tar.gz → 0.67.1__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 (106) hide show
  1. {getanyapi-0.66.4 → getanyapi-0.67.1}/PKG-INFO +1 -1
  2. {getanyapi-0.66.4 → getanyapi-0.67.1}/pyproject.toml +1 -1
  3. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/__init__.py +1 -1
  4. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/linkedin.py +83 -7
  5. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/perplexity.py +2 -2
  6. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/snapchat.py +2 -2
  7. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/truthsocial.py +6 -6
  8. {getanyapi-0.66.4 → getanyapi-0.67.1}/.gitignore +0 -0
  9. {getanyapi-0.66.4 → getanyapi-0.67.1}/README.md +0 -0
  10. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_account.py +0 -0
  11. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_async_client.py +0 -0
  12. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_client.py +0 -0
  13. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_errors.py +0 -0
  14. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_idempotency.py +0 -0
  15. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_pagination.py +0 -0
  16. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/_transport.py +0 -0
  17. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/discovery_types.py +0 -0
  18. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/__init__.py +0 -0
  19. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/ahrefs.py +0 -0
  20. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/airbnb.py +0 -0
  21. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/alibaba.py +0 -0
  22. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/amazon.py +0 -0
  23. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/apollo.py +0 -0
  24. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/appstore.py +0 -0
  25. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/bluesky.py +0 -0
  26. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/booking.py +0 -0
  27. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/capterra.py +0 -0
  28. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/chatgpt.py +0 -0
  29. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/coinmarketcap.py +0 -0
  30. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/company.py +0 -0
  31. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/company_enrichment.py +0 -0
  32. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/company_identify.py +0 -0
  33. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/company_search.py +0 -0
  34. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/congress.py +0 -0
  35. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/contact_enrichment.py +0 -0
  36. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/douyin.py +0 -0
  37. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/ebay.py +0 -0
  38. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/email.py +0 -0
  39. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/email_finding.py +0 -0
  40. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/email_verification.py +0 -0
  41. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/facebook.py +0 -0
  42. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/fiverr.py +0 -0
  43. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/g2.py +0 -0
  44. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/gemini.py +0 -0
  45. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/github.py +0 -0
  46. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/glassdoor.py +0 -0
  47. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/google.py +0 -0
  48. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/google_ads.py +0 -0
  49. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/google_finance.py +0 -0
  50. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/google_shopping.py +0 -0
  51. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/hackernews.py +0 -0
  52. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/indeed.py +0 -0
  53. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/instagram.py +0 -0
  54. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/job_search.py +0 -0
  55. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/maps.py +0 -0
  56. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/mobile_phone.py +0 -0
  57. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/naver.py +0 -0
  58. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/nextdoor.py +0 -0
  59. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/people_search.py +0 -0
  60. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/person.py +0 -0
  61. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/person_enrichment.py +0 -0
  62. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/pinterest.py +0 -0
  63. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/playstore.py +0 -0
  64. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/polymarket.py +0 -0
  65. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/property_records.py +0 -0
  66. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/realtor.py +0 -0
  67. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/reddit.py +0 -0
  68. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/redfin.py +0 -0
  69. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/rednote.py +0 -0
  70. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/sec.py +0 -0
  71. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/semrush.py +0 -0
  72. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/seo.py +0 -0
  73. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/similarweb.py +0 -0
  74. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/social.py +0 -0
  75. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/spotify.py +0 -0
  76. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/substack.py +0 -0
  77. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/technographics.py +0 -0
  78. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/threads.py +0 -0
  79. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/tiktok.py +0 -0
  80. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/tiktok_shop.py +0 -0
  81. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/tripadvisor.py +0 -0
  82. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/trustpilot.py +0 -0
  83. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/twitter.py +0 -0
  84. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/upwork.py +0 -0
  85. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/walmart.py +0 -0
  86. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/web.py +0 -0
  87. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/weibo.py +0 -0
  88. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/yahoo_finance.py +0 -0
  89. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/yelp.py +0 -0
  90. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/youtube.py +0 -0
  91. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/zhihu.py +0 -0
  92. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/platforms/zillow.py +0 -0
  93. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/py.typed +0 -0
  94. {getanyapi-0.66.4 → getanyapi-0.67.1}/src/getanyapi/types.py +0 -0
  95. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/conftest.py +0 -0
  96. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_account.py +0 -0
  97. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_client.py +0 -0
  98. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_durable_requests.py +0 -0
  99. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_envelope.py +0 -0
  100. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_errors.py +0 -0
  101. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_fixture_roundtrip.py +0 -0
  102. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_fixture_sweep.py +0 -0
  103. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_not_found_reason.py +0 -0
  104. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_pagination.py +0 -0
  105. {getanyapi-0.66.4 → getanyapi-0.67.1}/tests/test_transport.py +0 -0
  106. {getanyapi-0.66.4 → getanyapi-0.67.1}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: getanyapi
3
- Version: 0.66.4
3
+ Version: 0.67.1
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.66.4"
7
+ version = "0.67.1"
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"
@@ -55,7 +55,7 @@ from .types import (
55
55
  unwrap,
56
56
  )
57
57
 
58
- __version__ = "0.66.4"
58
+ __version__ = "0.67.1"
59
59
 
60
60
  __all__ = [
61
61
  # clients + top-level functions
@@ -405,6 +405,10 @@ class LinkedinPostReactionsInput(TypedDict, total=False):
405
405
  """Maximum number of reactions to return (1-100, default 100). Range: 1 to 100."""
406
406
  preferLatencyUnderMs: NotRequired[int]
407
407
  """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."""
408
+ requireFields: NotRequired[
409
+ list[Literal["actor", "items", "postId", "reactionType"]]
410
+ ]
411
+ """Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `postId`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. Naming a combination that no single source returns together is refused as invalid input, with no charge."""
408
412
  source: NotRequired[list[str]]
409
413
  """Optional. Source ids to prefer, in order, taken from this endpoint's `lanes[].source.id` in /catalog or /apis. Omit it and the cheapest source serves, with automatic failover. Listed sources are tried first in the order given, then the others, unless `allowFallbacks` is false. A single source with `allowFallbacks` false is served only by that source at its price, quoted and charged exactly, with no failover. The price is that of the dearest source that may serve. An id that does not serve this endpoint is rejected as invalid input with no charge; a listed source that is not serving right now is refused with no charge, so omit `source` to be served by another. On a paginated walk, later pages must include the source that served page one, or omit `source`."""
410
414
  url: Required[str]
@@ -435,6 +439,64 @@ class LinkedinProfileInput(TypedDict, total=False):
435
439
  """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."""
436
440
  preferLatencyUnderMs: NotRequired[int]
437
441
  """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."""
442
+ requireFields: NotRequired[
443
+ list[
444
+ Literal[
445
+ "about",
446
+ "certifications",
447
+ "city",
448
+ "companyId",
449
+ "companyLinkedinUrl",
450
+ "companyName",
451
+ "connectionsCount",
452
+ "country",
453
+ "countryCode",
454
+ "coverImage",
455
+ "creator",
456
+ "currentPosition",
457
+ "degree",
458
+ "description",
459
+ "duration",
460
+ "education",
461
+ "employmentType",
462
+ "endDate",
463
+ "endorsements",
464
+ "fieldOfStudy",
465
+ "firstName",
466
+ "followerCount",
467
+ "hiring",
468
+ "honorsAndAwards",
469
+ "id",
470
+ "influencer",
471
+ "issuedAt",
472
+ "issuedBy",
473
+ "languages",
474
+ "lastName",
475
+ "location",
476
+ "name",
477
+ "openToWork",
478
+ "photo",
479
+ "positions",
480
+ "premium",
481
+ "projects",
482
+ "publicIdentifier",
483
+ "publications",
484
+ "publishedText",
485
+ "school",
486
+ "schoolId",
487
+ "schoolUrl",
488
+ "skills",
489
+ "startDate",
490
+ "state",
491
+ "title",
492
+ "topSkills",
493
+ "url",
494
+ "verified",
495
+ "workplaceType",
496
+ ]
497
+ ]
498
+ ]
499
+ """Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `city` or `workplaceType`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a profile that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge."""
438
500
  source: NotRequired[list[str]]
439
501
  """Optional. Source ids to prefer, in order, taken from this endpoint's `lanes[].source.id` in /catalog or /apis. Omit it and the cheapest source serves, with automatic failover. Listed sources are tried first in the order given, then the others, unless `allowFallbacks` is false. A single source with `allowFallbacks` false is served only by that source at its price, quoted and charged exactly, with no failover. The price is that of the dearest source that may serve. An id that does not serve this endpoint is rejected as invalid input with no charge; a listed source that is not serving right now is refused with no charge, so omit `source` to be served by another. On a paginated walk, later pages must include the source that served page one, or omit `source`."""
440
502
  url: Required[str]
@@ -2231,7 +2293,7 @@ class LinkedinPostReactionsItem(BaseModel):
2231
2293
  post_id: str | None = Field(
2232
2294
  default=None,
2233
2295
  alias="postId",
2234
- description="LinkedIn URN of the post that was reacted to. Populated whenever the provider has data for the entity. Present whenever the upstream returns this record.",
2296
+ description="LinkedIn URN of the post that was reacted to.",
2235
2297
  )
2236
2298
  reaction_type: str = Field(
2237
2299
  alias="reactionType",
@@ -2364,9 +2426,9 @@ class LinkedinProfileData(BaseModel):
2364
2426
  publications: list[LinkedinProfilePublication] | None = Field(
2365
2427
  default=None, description="Publications."
2366
2428
  )
2367
- skills: list[Any] | None = Field(
2429
+ skills: list[LinkedinProfileSkill] | None = Field(
2368
2430
  default=None,
2369
- description="The member's skills, as free-form strings when present.",
2431
+ description="The member's skills: an object per skill, or a bare skill name when LinkedIn shows no endorsed-skills section.",
2370
2432
  )
2371
2433
  state: str | None = Field(
2372
2434
  default=None, description="State or region of the profile owner."
@@ -2509,6 +2571,20 @@ class LinkedinProfilePublication(BaseModel):
2509
2571
  title: str | None = Field(default=None, description="Publication title.")
2510
2572
 
2511
2573
 
2574
+ class LinkedinProfileSkill(BaseModel):
2575
+ model_config = ConfigDict(extra="allow")
2576
+
2577
+ endorsements: str | None = Field(
2578
+ default=None,
2579
+ description="Endorsement count as LinkedIn shows it, e.g. '23 endorsements'. Null from a source that does not read endorsements; name it in requireFields to be served by one that does.",
2580
+ )
2581
+ name: str | None = Field(default=None, description="Skill name.")
2582
+ positions: list[str] | None = Field(
2583
+ default=None,
2584
+ description="Where the skill was used or who endorsed it, as LinkedIn shows it, e.g. 'Endorsed by 3 colleagues at Rippling'. Null from a source that does not read them; name it in requireFields to be served by one that does.",
2585
+ )
2586
+
2587
+
2512
2588
  class LinkedinProfileCommentsData(BaseModel):
2513
2589
  items: list[LinkedinProfileCommentsItem] = Field(
2514
2590
  description="Comments this member left on other people's posts, newest first, each with the post it was left on. Populated whenever the provider has data for the entity."
@@ -4392,7 +4468,7 @@ class LinkedinNamespace:
4392
4468
  List who reacted to a LinkedIn post - reactor name, profile URL, job title,
4393
4469
  and reaction type. Lead-gen grade.
4394
4470
 
4395
- Price: $0.005 per request.
4471
+ Price: $0.0029 per request.
4396
4472
 
4397
4473
  Example:
4398
4474
  res = client.linkedin.post_reactions(limit=5, url="https://www.linkedin.com/posts/satyanadella_today-were-bringing-skills-to-copilot-for-activity-7475945433668694017--kvG")
@@ -4437,7 +4513,7 @@ class LinkedinNamespace:
4437
4513
  awards, languages, projects, publications, and verified/premium/open-to-work
4438
4514
  flags.
4439
4515
 
4440
- Price: $0.004 per request.
4516
+ Price: $0.0029 per request.
4441
4517
 
4442
4518
  Example:
4443
4519
  res = client.linkedin.profile(url="https://www.linkedin.com/in/patrickcollison")
@@ -5086,7 +5162,7 @@ class AsyncLinkedinNamespace:
5086
5162
  List who reacted to a LinkedIn post - reactor name, profile URL, job title,
5087
5163
  and reaction type. Lead-gen grade.
5088
5164
 
5089
- Price: $0.005 per request.
5165
+ Price: $0.0029 per request.
5090
5166
 
5091
5167
  Example:
5092
5168
  res = client.linkedin.post_reactions(limit=5, url="https://www.linkedin.com/posts/satyanadella_today-were-bringing-skills-to-copilot-for-activity-7475945433668694017--kvG")
@@ -5131,7 +5207,7 @@ class AsyncLinkedinNamespace:
5131
5207
  awards, languages, projects, publications, and verified/premium/open-to-work
5132
5208
  flags.
5133
5209
 
5134
- Price: $0.004 per request.
5210
+ Price: $0.0029 per request.
5135
5211
 
5136
5212
  Example:
5137
5213
  res = client.linkedin.profile(url="https://www.linkedin.com/in/patrickcollison")
@@ -80,7 +80,7 @@ class PerplexityNamespace:
80
80
  Ask Perplexity a web-grounded question and receive an answer with source
81
81
  citations.
82
82
 
83
- Price: $0.00006 per request plus $0.011 per result (maximum $0.0111).
83
+ Price: $0.002 per request.
84
84
 
85
85
  Example:
86
86
  res = client.perplexity.search(prompt="What is AnyAPI at getanyapi.com, and what does it offer?")
@@ -108,7 +108,7 @@ class AsyncPerplexityNamespace:
108
108
  Ask Perplexity a web-grounded question and receive an answer with source
109
109
  citations.
110
110
 
111
- Price: $0.00006 per request plus $0.011 per result (maximum $0.0111).
111
+ Price: $0.002 per request.
112
112
 
113
113
  Example:
114
114
  res = client.perplexity.search(prompt="What is AnyAPI at getanyapi.com, and what does it offer?")
@@ -106,7 +106,7 @@ class SnapchatNamespace:
106
106
  Fetch a Snapchat user's public profile by username: display name, bio,
107
107
  subscriber count, and recent public content.
108
108
 
109
- Price: $0.0011 per request plus $0.0022 per result (maximum $0.0033).
109
+ Price: $0.0012 per request.
110
110
 
111
111
  Example:
112
112
  res = client.snapchat.profile(username="nasa")
@@ -134,7 +134,7 @@ class AsyncSnapchatNamespace:
134
134
  Fetch a Snapchat user's public profile by username: display name, bio,
135
135
  subscriber count, and recent public content.
136
136
 
137
- Price: $0.0011 per request plus $0.0022 per result (maximum $0.0033).
137
+ Price: $0.0012 per request.
138
138
 
139
139
  Example:
140
140
  res = client.snapchat.profile(username="nasa")
@@ -212,7 +212,7 @@ class TruthsocialNamespace:
212
212
  Get a single Truth Social post by its URL - text, author, engagement (likes,
213
213
  comments, shares), and timestamp as clean JSON.
214
214
 
215
- Price: $0.0036 per request.
215
+ Price: $0.0012 per request.
216
216
 
217
217
  Example:
218
218
  res = client.truthsocial.post(url="https://truthsocial.com/@realDonaldTrump/posts/116824551176646175")
@@ -233,7 +233,7 @@ class TruthsocialNamespace:
233
233
  Get a Truth Social account's public profile by handle - display name, bio,
234
234
  follower/following counts, and post count as clean JSON.
235
235
 
236
- Price: $0.0036 per request.
236
+ Price: $0.0012 per request.
237
237
 
238
238
  Example:
239
239
  res = client.truthsocial.profile(handle="DevinNunes")
@@ -254,7 +254,7 @@ class TruthsocialNamespace:
254
254
  List a Truth Social account's recent posts by handle - text, engagement
255
255
  (likes, comments, shares), and timestamps as clean JSON.
256
256
 
257
- Price: $0.0036 per request.
257
+ Price: $0.0012 per request.
258
258
 
259
259
  Example:
260
260
  res = client.truthsocial.user_posts(handle="realDonaldTrump")
@@ -305,7 +305,7 @@ class AsyncTruthsocialNamespace:
305
305
  Get a single Truth Social post by its URL - text, author, engagement (likes,
306
306
  comments, shares), and timestamp as clean JSON.
307
307
 
308
- Price: $0.0036 per request.
308
+ Price: $0.0012 per request.
309
309
 
310
310
  Example:
311
311
  res = client.truthsocial.post(url="https://truthsocial.com/@realDonaldTrump/posts/116824551176646175")
@@ -326,7 +326,7 @@ class AsyncTruthsocialNamespace:
326
326
  Get a Truth Social account's public profile by handle - display name, bio,
327
327
  follower/following counts, and post count as clean JSON.
328
328
 
329
- Price: $0.0036 per request.
329
+ Price: $0.0012 per request.
330
330
 
331
331
  Example:
332
332
  res = client.truthsocial.profile(handle="DevinNunes")
@@ -347,7 +347,7 @@ class AsyncTruthsocialNamespace:
347
347
  List a Truth Social account's recent posts by handle - text, engagement
348
348
  (likes, comments, shares), and timestamps as clean JSON.
349
349
 
350
- Price: $0.0036 per request.
350
+ Price: $0.0012 per request.
351
351
 
352
352
  Example:
353
353
  res = client.truthsocial.user_posts(handle="realDonaldTrump")
File without changes
File without changes
File without changes
File without changes