scavio 0.9.0 → 0.10.0

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.
package/README.md CHANGED
@@ -205,29 +205,36 @@ await client.x.trending({ country: "UnitedStates" });
205
205
  ### LinkedIn
206
206
 
207
207
  ```typescript
208
- // Person profile, about, posts, and contact
208
+ // Person profile, about, and posts. A handle or a full LinkedIn URL works
209
+ // anywhere a reference is taken.
209
210
  await client.linkedin.person({ username: "williamhgates" });
210
- await client.linkedin.personAbout({ username: "williamhgates" });
211
+ await client.linkedin.personAbout({ url: "https://www.linkedin.com/in/williamhgates/" });
211
212
  await client.linkedin.personPosts({ username: "williamhgates" });
212
- await client.linkedin.personContact({ username: "williamhgates" });
213
213
 
214
- // Company profile, posts, people, and jobs
214
+ // Company profile and posts
215
215
  await client.linkedin.company({ company: "microsoft" });
216
216
  await client.linkedin.companyPosts({ company: "microsoft" });
217
- await client.linkedin.companyPeople({ company: "microsoft" });
218
- await client.linkedin.companyJobs({ company: "microsoft" });
219
-
220
- // Search people, jobs, and posts
221
- await client.linkedin.searchPeople({ search: "john", title: "engineer" });
222
- await client.linkedin.searchJobs({ search: "software engineer" });
223
- await client.linkedin.searchPosts({ search: "AI agents" });
224
-
225
- // Job, post, and post comments
226
- await client.linkedin.job({ job_id: "3900000000" });
227
- await client.linkedin.post({ post_id: "7486820977411145728" });
228
- await client.linkedin.postComments({ post_id: "7486820977411145728", sort_order: "relevance" });
217
+
218
+ // Jobs: search, then pull detail for one listing
219
+ await client.linkedin.searchJobs({ search: "software engineer", location: "United States" });
220
+ await client.linkedin.job({ job_id: "4415427228" });
221
+
222
+ // A post and its comments (10 per page)
223
+ await client.linkedin.post({ post_id: "7488618410256523265" });
224
+ await client.linkedin.postComments({ post_id: "7488618410256523265", page: 1 });
229
225
  ```
230
226
 
227
+ All LinkedIn endpoints cost 1 credit.
228
+
229
+ > **Retired endpoints.** The upstream provider withdrew the datasets behind
230
+ > `personContact`, `companyPeople`, `companyJobs`, `searchPeople` and
231
+ > `searchPosts`. They remain callable but always return HTTP 410 and are never
232
+ > billed. `company()` returns `featured_employees` (a small sample of staff), and
233
+ > `searchJobs()` with a company name substitutes for `companyJobs()`.
234
+ >
235
+ > `personPosts` and `companyPosts` return up to 50 posts; the provider exposes no
236
+ > further pages, so those endpoints no longer take a cursor.
237
+
231
238
  ### TikTok
232
239
 
233
240
  ```typescript
package/dist/index.cjs CHANGED
@@ -756,48 +756,78 @@ var LinkedInNamespace = class {
756
756
  this.client = client;
757
757
  }
758
758
  client;
759
+ /** Full profile: about text, experience, education, honours and links. */
759
760
  async person(options) {
760
761
  return this.client._post("/api/v1/linkedin/person", options);
761
762
  }
763
+ /** The about-only slice of the profile payload. */
762
764
  async personAbout(options) {
763
765
  return this.client._post("/api/v1/linkedin/person/about", options);
764
766
  }
767
+ /** Recent posts, up to 50. Upstream exposes no further pages. */
765
768
  async personPosts(options) {
766
769
  return this.client._post("/api/v1/linkedin/person/posts", options);
767
770
  }
768
- async personContact(options) {
769
- return this.client._post("/api/v1/linkedin/person/contact", options);
770
- }
771
+ /** Company profile, including locations and featured employees. */
771
772
  async company(options) {
772
773
  return this.client._post("/api/v1/linkedin/company", options);
773
774
  }
775
+ /** Recent company posts, up to 50. Upstream exposes no further pages. */
774
776
  async companyPosts(options) {
775
777
  return this.client._post("/api/v1/linkedin/company/posts", options);
776
778
  }
777
- async companyPeople(options) {
778
- return this.client._post("/api/v1/linkedin/company/people", options);
779
- }
780
- async companyJobs(options) {
781
- return this.client._post("/api/v1/linkedin/company/jobs", options);
782
- }
783
- async searchPeople(options) {
784
- return this.client._post("/api/v1/linkedin/search/people", options);
785
- }
779
+ /** Job search. Upstream rotates its result set, so repeat calls differ. */
786
780
  async searchJobs(options) {
787
781
  return this.client._post("/api/v1/linkedin/search/jobs", options);
788
782
  }
789
- async searchPosts(options) {
790
- return this.client._post("/api/v1/linkedin/search/posts", options);
791
- }
783
+ /** Full detail for one job listing, including the hiring company. */
792
784
  async job(options) {
793
785
  return this.client._post("/api/v1/linkedin/job", options);
794
786
  }
787
+ /** Full detail for one post, including its top visible comments. */
795
788
  async post(options) {
796
789
  return this.client._post("/api/v1/linkedin/post", options);
797
790
  }
791
+ /** Comments with their replies, 10 per page. */
798
792
  async postComments(options) {
799
793
  return this.client._post("/api/v1/linkedin/post/comments", options);
800
794
  }
795
+ /**
796
+ * @deprecated Retired by the upstream provider. Always returns HTTP 410 and is
797
+ * never billed.
798
+ */
799
+ async personContact(options) {
800
+ return this.client._post("/api/v1/linkedin/person/contact", options);
801
+ }
802
+ /**
803
+ * @deprecated Retired by the upstream provider. Always returns HTTP 410 and is
804
+ * never billed. `company()` returns `featured_employees`, a small sample of
805
+ * staff profiles.
806
+ */
807
+ async companyPeople(options) {
808
+ return this.client._post("/api/v1/linkedin/company/people", options);
809
+ }
810
+ /**
811
+ * @deprecated Retired by the upstream provider. Always returns HTTP 410 and is
812
+ * never billed. Use `searchJobs()` with the company name as the search term.
813
+ */
814
+ async companyJobs(options) {
815
+ return this.client._post("/api/v1/linkedin/company/jobs", options);
816
+ }
817
+ /**
818
+ * @deprecated Retired by the upstream provider. Always returns HTTP 410 and is
819
+ * never billed.
820
+ */
821
+ async searchPeople(options) {
822
+ return this.client._post("/api/v1/linkedin/search/people", options);
823
+ }
824
+ /**
825
+ * @deprecated Retired by the upstream provider. Always returns HTTP 410 and is
826
+ * never billed.
827
+ */
828
+ async searchPosts(options) {
829
+ return this.client._post("/api/v1/linkedin/search/posts", options);
830
+ }
801
831
  };
802
832
 
803
833
  // src/client.ts