crawlora 1.20.0.pre.sdk.1 → 1.22.0.pre.sdk.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6b2c18cf7941bcb09b47b86076c5d4039b6e38e605737248bb876f42cf8cbad4
4
- data.tar.gz: 3f2db3452716f8478814bb07f5b90170ed59d69b2477e0cd333e87f30698f2fc
3
+ metadata.gz: fc839ff6bea81de7058f6662270c8430583a2a5f1492da73ce2bca07bf4efe2b
4
+ data.tar.gz: 865f2345edf98fe56208fcb3ee12da485962cbddf5df44fc704a18921b8a461e
5
5
  SHA512:
6
- metadata.gz: 10832291832105f1b6b28e1da74ca449e7535ca4f3ffd2c7ce6b4b113eda4cdd58ceff5996dcd4541aef8458a881e10340354b31967f3d3a2db6271e303721c5
7
- data.tar.gz: e1520fe701b2727882aef006053479556cd0ea88997b5e6de8c6ea39aaf51897f2c29e212dc8df1034db9f1fc35b68f3b1cd46a30596c76b96857942b807f35f
6
+ metadata.gz: a69bd2acb0f14d12ab2b80bf99ceddf25e85c5ad4c075e030be8255cf78d0d99308c6a8b0a0c69d33bc2c029328c77722884e4b369c57a678ad1f22f4a763d16
7
+ data.tar.gz: '076876469b1494475a9645a3c7ccf7d2d9ff1b033738a3c4e0ad1c183b4fa83a585ce680274f7a91353aff1c0f0ea3de851f589573ac047a20b3b3d39a7b44b2'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## v1.22.0-sdk.1
4
+
5
+ - Regenerated from the public API contract (784 to 787 operations). Adds Threads search, cursor-paginated profile posts, and public post replies.
6
+
7
+ ## v1.21.0-sdk.1
8
+
9
+ - Regenerated from the public API contract (782 to 784 operations). Adds credential-free Threads public profile and single-post lookups.
10
+
11
+ ## v1.20.0-sdk.2
12
+
13
+ - Validate all supported ATS values for jobs dataset provider filters, including iCIMS and Eightfold.
14
+
3
15
  ## v1.20.0-sdk.1
4
16
 
5
17
  - Regenerated from the public API contract (776 to 782 operations). Adds jobs dataset company detail and nearby search, plus iCIMS and Eightfold board and job operations.
data/docs/operations.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Generated from `openapi/public.json`. Deprecated, admin, and internal operations are excluded from this SDK contract.
4
4
 
5
- Total operations: `782`
5
+ Total operations: `787`
6
6
 
7
7
  | Group | SDK method | Operation ID | HTTP | Params | Auth | Response | Notes |
8
8
  | --- | --- | --- | --- | --- | --- | --- | --- |
@@ -148,12 +148,12 @@ Total operations: `782`
148
148
  | datasets | `datasets.housing_markets_facets` | `datasets-housing-markets-facets` | `GET /datasets/housing-markets/facets` | `facet` (query String required)<br>`q` (query String)<br>`region_type` (query String)<br>`state_code` (query String)<br>`property_type` (query String)<br>`parent_metro_code` (query String)<br>`zip_code` (query String)<br>`period` (query String)<br>`latest` (query bool)<br>`min_median_sale_price` (query Float)<br>`max_median_sale_price` (query Float)<br>`min_median_list_price` (query Float)<br>`max_median_list_price` (query Float)<br>`min_price_to_income` (query Float)<br>`max_price_to_income` (query Float)<br>`min_salary_to_buy` (query Integer)<br>`max_salary_to_buy` (query Integer)<br>`min_median_dom` (query Float)<br>`max_median_dom` (query Float)<br>`min_inventory` (query Integer)<br>`max_inventory` (query Integer)<br>`min_homes_sold` (query Integer) | `ApiKeyAuth` | `DatasetsHousingMarketsFacetsResponse` | |
149
149
  | datasets | `datasets.housing_markets_item` | `datasets-housing-markets-item` | `GET /datasets/housing-markets/items/{region_type}/{table_id}` | `region_type` (path String required)<br>`table_id` (path Integer required)<br>`period` (query String)<br>`property_type` (query String)<br>`history` (query bool) | `ApiKeyAuth` | `DatasetsHousingMarketsItemResponse` | |
150
150
  | datasets | `datasets.housing_markets_search` | `datasets-housing-markets-search` | `GET /datasets/housing-markets/search` | `q` (query String)<br>`region_type` (query String)<br>`state_code` (query String)<br>`property_type` (query String)<br>`parent_metro_code` (query String)<br>`zip_code` (query String)<br>`period` (query String)<br>`latest` (query bool)<br>`min_median_sale_price` (query Float)<br>`max_median_sale_price` (query Float)<br>`min_median_list_price` (query Float)<br>`max_median_list_price` (query Float)<br>`min_price_to_income` (query Float)<br>`max_price_to_income` (query Float)<br>`min_salary_to_buy` (query Integer)<br>`max_salary_to_buy` (query Integer)<br>`min_median_dom` (query Float)<br>`max_median_dom` (query Float)<br>`min_inventory` (query Integer)<br>`max_inventory` (query Integer)<br>`min_homes_sold` (query Integer)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsHousingMarketsSearchResponse` | |
151
- | datasets | `datasets.jobs_companies` | `datasets-jobs-companies` | `GET /datasets/jobs/companies` | `q` (query String)<br>`provider` (query String)<br>`status` (query String)<br>`min_open_roles` (query Integer)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsCompaniesResponse` | |
151
+ | datasets | `datasets.jobs_companies` | `datasets-jobs-companies` | `GET /datasets/jobs/companies` | `q` (query String)<br>`provider` (query "greenhouse" \| "lever" \| "ashby" \| "workday" \| "smartrecruiters" \| "workable" \| "recruitee" \| "rippling" \| "personio" \| "teamtailor" \| "oracle" \| "ukg" \| "icims" \| "eightfold")<br>`status` (query String)<br>`min_open_roles` (query Integer)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsCompaniesResponse` | |
152
152
  | datasets | `datasets.jobs_company_item` | `datasets-jobs-company-item` | `GET /datasets/jobs/companies/{id}` | `id` (path String required) | `ApiKeyAuth` | `DatasetsJobsCompanyItemResponse` | |
153
153
  | datasets | `datasets.jobs_facets` | `datasets-jobs-facets` | `GET /datasets/jobs/facets` | `size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsFacetsResponse` | |
154
154
  | datasets | `datasets.jobs_item` | `datasets-jobs-item` | `GET /datasets/jobs/items/{id}` | `id` (path String required) | `ApiKeyAuth` | `DatasetsJobsItemResponse` | |
155
- | datasets | `datasets.jobs_nearby` | `datasets-jobs-nearby` | `GET /datasets/jobs/nearby` | `lat` (query Float required)<br>`lon` (query Float required)<br>`radius_km` (query Float)<br>`provider` (query String)<br>`include_closed` (query bool)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsNearbyResponse` | |
156
- | datasets | `datasets.jobs_search` | `datasets-jobs-search` | `GET /datasets/jobs/search` | `q` (query String)<br>`company` (query String)<br>`provider` (query String)<br>`department` (query String)<br>`location` (query String)<br>`employment_type` (query String)<br>`remote` (query bool)<br>`include_closed` (query bool)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsSearchResponse` | |
155
+ | datasets | `datasets.jobs_nearby` | `datasets-jobs-nearby` | `GET /datasets/jobs/nearby` | `lat` (query Float required)<br>`lon` (query Float required)<br>`radius_km` (query Float)<br>`provider` (query "greenhouse" \| "lever" \| "ashby" \| "workday" \| "smartrecruiters" \| "workable" \| "recruitee" \| "rippling" \| "personio" \| "teamtailor" \| "oracle" \| "ukg" \| "icims" \| "eightfold")<br>`include_closed` (query bool)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsNearbyResponse` | |
156
+ | datasets | `datasets.jobs_search` | `datasets-jobs-search` | `GET /datasets/jobs/search` | `q` (query String)<br>`company` (query String)<br>`provider` (query "greenhouse" \| "lever" \| "ashby" \| "workday" \| "smartrecruiters" \| "workable" \| "recruitee" \| "rippling" \| "personio" \| "teamtailor" \| "oracle" \| "ukg" \| "icims" \| "eightfold")<br>`department` (query String)<br>`location` (query String)<br>`employment_type` (query String)<br>`remote` (query bool)<br>`include_closed` (query bool)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJobsSearchResponse` | |
157
157
  | datasets | `datasets.journalists_facets` | `datasets-journalists-facets` | `GET /datasets/journalists/facets` | `facet` (query String required)<br>`q` (query String)<br>`outlet` (query String)<br>`vertical` (query String)<br>`topic` (query String)<br>`contact_type` (query String) | `ApiKeyAuth` | `DatasetsJournalistsFacetsResponse` | |
158
158
  | datasets | `datasets.journalists_item` | `datasets-journalists-item` | `GET /datasets/journalists/items/{outlet}/{slug}` | `outlet` (path String required)<br>`slug` (path String required) | `ApiKeyAuth` | `DatasetsJournalistsItemResponse` | |
159
159
  | datasets | `datasets.journalists_search` | `datasets-journalists-search` | `GET /datasets/journalists/search` | `q` (query String)<br>`outlet` (query String)<br>`vertical` (query String)<br>`topic` (query String)<br>`contact_type` (query String)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsJournalistsSearchResponse` | |
@@ -670,6 +670,11 @@ Total operations: `782`
670
670
  | tcdb | `tcdb.tagged` | `tcdb-tagged` | `GET /tcdb/tagged` | `id` (query String)<br>`path` (query String)<br>`url` (query String)<br>`sport` (query "Baseball" \| "Basketball" \| "Boxing" \| "Cricket" \| "Football" \| "Gaming" \| "Golf" \| "Hockey" \| "Misc Sports" \| "MMA" \| "Multi-Sport" \| "Non-Sport" \| "Racing" \| "Soccer" \| "Tennis" \| "Wrestling")<br>`page` (query Integer)<br>`limit` (query Integer) | `ApiKeyAuth` | `TcdbTaggedResponse` | |
671
671
  | tcdb | `tcdb.team` | `tcdb-team` | `GET /tcdb/team` | `id` (query String)<br>`path` (query String)<br>`url` (query String)<br>`limit` (query Integer) | `ApiKeyAuth` | `TcdbTeamResponse` | |
672
672
  | tcdb | `tcdb.top_sets` | `tcdb-top-sets` | `GET /tcdb/top-sets` | `limit` (query Integer) | `ApiKeyAuth` | `TcdbTopSetsResponse` | |
673
+ | threads | `threads.post` | `threads-post` | `GET /threads/post/{username}/{code}` | `username` (path String required)<br>`code` (path String required) | `ApiKeyAuth` | `ThreadsPostResponse` | |
674
+ | threads | `threads.post_replies` | `threads-post-replies` | `GET /threads/post/{username}/{code}/replies` | `username` (path String required)<br>`code` (path String required) | `ApiKeyAuth` | `ThreadsPostRepliesResponse` | |
675
+ | threads | `threads.profile` | `threads-profile` | `GET /threads/profile/{username}` | `username` (path String required) | `ApiKeyAuth` | `ThreadsProfileResponse` | |
676
+ | threads | `threads.profile_posts` | `threads-profile-posts` | `GET /threads/profile/{username}/posts` | `username` (path String required)<br>`cursor` (query String) | `ApiKeyAuth` | `ThreadsProfilePostsResponse` | |
677
+ | threads | `threads.search` | `threads-search` | `GET /threads/search` | `q` (query String required) | `ApiKeyAuth` | `ThreadsSearchResponse` | |
673
678
  | tiktok | `tiktok.category` | `tiktok-category` | `GET /tiktok/category` | none | `ApiKeyAuth` | `TiktokCategoryResponse` | |
674
679
  | tiktok | `tiktok.video_comments` | `tiktok-video-comments` | `GET /tiktok/comments` | `aweme_id` (query String required)<br>`cursor` (query Integer) | `ApiKeyAuth` | `TiktokVideoCommentsResponse` | |
675
680
  | tiktok | `tiktok.explore` | `tiktok-explore` | `GET /tiktok/explore/{id}` | `id` (path Integer required) | `ApiKeyAuth` | `TiktokExploreResponse` | |
data/docs/recipes.md CHANGED
@@ -26,6 +26,16 @@ posts = client.reddit.search(q: "ruby", subreddit: "programming")
26
26
  brand = client.brand.retrieve(domain: "stripe.com")
27
27
  ```
28
28
 
29
+ ## Threads Public Lookups
30
+
31
+ ```ruby
32
+ profile = client.threads.profile(username: "zuck")
33
+ post = client.threads.post(username: "zuck", code: "DakyAavlKLZ")
34
+ results = client.threads.search(q: "openai")
35
+ posts = client.threads.profile_posts(username: "zuck")
36
+ replies = client.threads.post_replies(username: "zuck", code: "DakyAavlKLZ")
37
+ ```
38
+
29
39
  ## Software, Reviews, And Market Datasets
30
40
 
31
41
  Build a Chrome extension competitive-intelligence view without downloading the
@@ -7190,7 +7190,23 @@ module Crawlora
7190
7190
  {
7191
7191
  "name" => "provider",
7192
7192
  "in" => "query",
7193
- "type" => "string"
7193
+ "type" => "string",
7194
+ "enum" => [
7195
+ "greenhouse",
7196
+ "lever",
7197
+ "ashby",
7198
+ "workday",
7199
+ "smartrecruiters",
7200
+ "workable",
7201
+ "recruitee",
7202
+ "rippling",
7203
+ "personio",
7204
+ "teamtailor",
7205
+ "oracle",
7206
+ "ukg",
7207
+ "icims",
7208
+ "eightfold"
7209
+ ]
7194
7210
  },
7195
7211
  {
7196
7212
  "name" => "status",
@@ -7325,7 +7341,23 @@ module Crawlora
7325
7341
  {
7326
7342
  "name" => "provider",
7327
7343
  "in" => "query",
7328
- "type" => "string"
7344
+ "type" => "string",
7345
+ "enum" => [
7346
+ "greenhouse",
7347
+ "lever",
7348
+ "ashby",
7349
+ "workday",
7350
+ "smartrecruiters",
7351
+ "workable",
7352
+ "recruitee",
7353
+ "rippling",
7354
+ "personio",
7355
+ "teamtailor",
7356
+ "oracle",
7357
+ "ukg",
7358
+ "icims",
7359
+ "eightfold"
7360
+ ]
7329
7361
  },
7330
7362
  {
7331
7363
  "name" => "include_closed",
@@ -7376,7 +7408,23 @@ module Crawlora
7376
7408
  {
7377
7409
  "name" => "provider",
7378
7410
  "in" => "query",
7379
- "type" => "string"
7411
+ "type" => "string",
7412
+ "enum" => [
7413
+ "greenhouse",
7414
+ "lever",
7415
+ "ashby",
7416
+ "workday",
7417
+ "smartrecruiters",
7418
+ "workable",
7419
+ "recruitee",
7420
+ "rippling",
7421
+ "personio",
7422
+ "teamtailor",
7423
+ "oracle",
7424
+ "ukg",
7425
+ "icims",
7426
+ "eightfold"
7427
+ ]
7380
7428
  },
7381
7429
  {
7382
7430
  "name" => "department",
@@ -27688,6 +27736,118 @@ module Crawlora
27688
27736
  "ApiKeyAuth"
27689
27737
  ]
27690
27738
  },
27739
+ "threads-post" => {
27740
+ "id" => "threads-post",
27741
+ "method" => "GET",
27742
+ "path" => "/threads/post/{username}/{code}",
27743
+ "pathParams" => [
27744
+ "username",
27745
+ "code"
27746
+ ],
27747
+ "queryParams" => [],
27748
+ "formParams" => [],
27749
+ "bodyParam" => nil,
27750
+ "bodyRequired" => false,
27751
+ "consumes" => [],
27752
+ "produces" => [
27753
+ "application/json"
27754
+ ],
27755
+ "security" => [
27756
+ "ApiKeyAuth"
27757
+ ]
27758
+ },
27759
+ "threads-post-replies" => {
27760
+ "id" => "threads-post-replies",
27761
+ "method" => "GET",
27762
+ "path" => "/threads/post/{username}/{code}/replies",
27763
+ "pathParams" => [
27764
+ "username",
27765
+ "code"
27766
+ ],
27767
+ "queryParams" => [],
27768
+ "formParams" => [],
27769
+ "bodyParam" => nil,
27770
+ "bodyRequired" => false,
27771
+ "consumes" => [],
27772
+ "produces" => [
27773
+ "application/json"
27774
+ ],
27775
+ "security" => [
27776
+ "ApiKeyAuth"
27777
+ ]
27778
+ },
27779
+ "threads-profile" => {
27780
+ "id" => "threads-profile",
27781
+ "method" => "GET",
27782
+ "path" => "/threads/profile/{username}",
27783
+ "pathParams" => [
27784
+ "username"
27785
+ ],
27786
+ "queryParams" => [],
27787
+ "formParams" => [],
27788
+ "bodyParam" => nil,
27789
+ "bodyRequired" => false,
27790
+ "consumes" => [],
27791
+ "produces" => [
27792
+ "application/json"
27793
+ ],
27794
+ "security" => [
27795
+ "ApiKeyAuth"
27796
+ ]
27797
+ },
27798
+ "threads-profile-posts" => {
27799
+ "id" => "threads-profile-posts",
27800
+ "method" => "GET",
27801
+ "path" => "/threads/profile/{username}/posts",
27802
+ "pathParams" => [
27803
+ "username"
27804
+ ],
27805
+ "queryParams" => [
27806
+ {
27807
+ "name" => "cursor",
27808
+ "in" => "query",
27809
+ "type" => "string"
27810
+ }
27811
+ ],
27812
+ "formParams" => [],
27813
+ "bodyParam" => nil,
27814
+ "bodyRequired" => false,
27815
+ "consumes" => [],
27816
+ "produces" => [
27817
+ "application/json"
27818
+ ],
27819
+ "security" => [
27820
+ "ApiKeyAuth"
27821
+ ],
27822
+ "paginatable" => true,
27823
+ "cursorParams" => [
27824
+ "cursor"
27825
+ ]
27826
+ },
27827
+ "threads-search" => {
27828
+ "id" => "threads-search",
27829
+ "method" => "GET",
27830
+ "path" => "/threads/search",
27831
+ "pathParams" => [],
27832
+ "queryParams" => [
27833
+ {
27834
+ "name" => "q",
27835
+ "in" => "query",
27836
+ "type" => "string",
27837
+ "required" => true
27838
+ }
27839
+ ],
27840
+ "formParams" => [],
27841
+ "bodyParam" => nil,
27842
+ "bodyRequired" => false,
27843
+ "consumes" => [],
27844
+ "produces" => [
27845
+ "application/json"
27846
+ ],
27847
+ "security" => [
27848
+ "ApiKeyAuth"
27849
+ ]
27850
+ },
27691
27851
  "tiktok-category" => {
27692
27852
  "id" => "tiktok-category",
27693
27853
  "method" => "GET",
@@ -32236,6 +32396,13 @@ module Crawlora
32236
32396
  "team" => "tcdb-team",
32237
32397
  "top_sets" => "tcdb-top-sets"
32238
32398
  },
32399
+ "threads" => {
32400
+ "post" => "threads-post",
32401
+ "post_replies" => "threads-post-replies",
32402
+ "profile" => "threads-profile",
32403
+ "profile_posts" => "threads-profile-posts",
32404
+ "search" => "threads-search"
32405
+ },
32239
32406
  "tiktok" => {
32240
32407
  "category" => "tiktok-category",
32241
32408
  "video_comments" => "tiktok-video-comments",
@@ -32380,7 +32547,7 @@ module Crawlora
32380
32547
  }
32381
32548
  }.freeze
32382
32549
 
32383
- OPERATION_COUNT = 782
32550
+ OPERATION_COUNT = 787
32384
32551
 
32385
32552
  module OperationId
32386
32553
  AIRBNB_HOST = "airbnb-host"
@@ -33042,6 +33209,11 @@ module Crawlora
33042
33209
  TCDB_TAGGED = "tcdb-tagged"
33043
33210
  TCDB_TEAM = "tcdb-team"
33044
33211
  TCDB_TOP_SETS = "tcdb-top-sets"
33212
+ THREADS_POST = "threads-post"
33213
+ THREADS_POST_REPLIES = "threads-post-replies"
33214
+ THREADS_PROFILE = "threads-profile"
33215
+ THREADS_PROFILE_POSTS = "threads-profile-posts"
33216
+ THREADS_SEARCH = "threads-search"
33045
33217
  TIKTOK_CATEGORY = "tiktok-category"
33046
33218
  TIKTOK_CHALLENGE = "tiktok-challenge"
33047
33219
  TIKTOK_CHALLENGE_LIST = "tiktok-challenge-list"
@@ -5,5 +5,5 @@ module Crawlora
5
5
  # as the Go/Java/PHP SDKs). RubyGems treats it as a prerelease and normalizes
6
6
  # the published gem version (the `-` becomes `.pre.`, e.g. `1.5.0.pre.sdk.N`).
7
7
  # Bumped across all SDK repos by the API repo's tools/sdkgen/bump_version.py.
8
- VERSION = "1.20.0-sdk.1"
8
+ VERSION = "1.22.0-sdk.1"
9
9
  end
data/openapi/public.json CHANGED
@@ -48370,6 +48370,265 @@
48370
48370
  },
48371
48371
  "type": "object"
48372
48372
  },
48373
+ "threads.Author": {
48374
+ "properties": {
48375
+ "id": {
48376
+ "type": "string"
48377
+ },
48378
+ "name": {
48379
+ "type": "string"
48380
+ },
48381
+ "username": {
48382
+ "type": "string"
48383
+ }
48384
+ },
48385
+ "type": "object"
48386
+ },
48387
+ "threads.Post": {
48388
+ "properties": {
48389
+ "author": {
48390
+ "$ref": "#/definitions/threads.Author"
48391
+ },
48392
+ "code": {
48393
+ "type": "string"
48394
+ },
48395
+ "image_url": {
48396
+ "type": "string"
48397
+ },
48398
+ "text": {
48399
+ "type": "string"
48400
+ },
48401
+ "url": {
48402
+ "type": "string"
48403
+ }
48404
+ },
48405
+ "type": "object"
48406
+ },
48407
+ "threads.Profile": {
48408
+ "properties": {
48409
+ "avatar_url": {
48410
+ "type": "string"
48411
+ },
48412
+ "biography": {
48413
+ "type": "string"
48414
+ },
48415
+ "followers_count": {
48416
+ "type": "integer"
48417
+ },
48418
+ "name": {
48419
+ "type": "string"
48420
+ },
48421
+ "threads_count": {
48422
+ "type": "integer"
48423
+ },
48424
+ "url": {
48425
+ "type": "string"
48426
+ },
48427
+ "username": {
48428
+ "type": "string"
48429
+ }
48430
+ },
48431
+ "type": "object"
48432
+ },
48433
+ "threads.ProfilePostsResult": {
48434
+ "properties": {
48435
+ "has_more": {
48436
+ "type": "boolean"
48437
+ },
48438
+ "items": {
48439
+ "items": {
48440
+ "$ref": "#/definitions/threads.Thread"
48441
+ },
48442
+ "type": "array"
48443
+ },
48444
+ "next_cursor": {
48445
+ "type": "string"
48446
+ },
48447
+ "username": {
48448
+ "type": "string"
48449
+ }
48450
+ },
48451
+ "type": "object"
48452
+ },
48453
+ "threads.RepliesResult": {
48454
+ "properties": {
48455
+ "code": {
48456
+ "type": "string"
48457
+ },
48458
+ "has_more": {
48459
+ "type": "boolean"
48460
+ },
48461
+ "items": {
48462
+ "items": {
48463
+ "$ref": "#/definitions/threads.Thread"
48464
+ },
48465
+ "type": "array"
48466
+ },
48467
+ "next_cursor": {
48468
+ "type": "string"
48469
+ },
48470
+ "pagination_limited": {
48471
+ "type": "boolean"
48472
+ },
48473
+ "username": {
48474
+ "type": "string"
48475
+ }
48476
+ },
48477
+ "type": "object"
48478
+ },
48479
+ "threads.SearchResult": {
48480
+ "properties": {
48481
+ "has_more": {
48482
+ "type": "boolean"
48483
+ },
48484
+ "items": {
48485
+ "items": {
48486
+ "$ref": "#/definitions/threads.Thread"
48487
+ },
48488
+ "type": "array"
48489
+ },
48490
+ "next_cursor": {
48491
+ "type": "string"
48492
+ },
48493
+ "query": {
48494
+ "type": "string"
48495
+ }
48496
+ },
48497
+ "type": "object"
48498
+ },
48499
+ "threads.Thread": {
48500
+ "properties": {
48501
+ "author": {
48502
+ "$ref": "#/definitions/threads.Author"
48503
+ },
48504
+ "code": {
48505
+ "type": "string"
48506
+ },
48507
+ "created_at": {
48508
+ "type": "string"
48509
+ },
48510
+ "id": {
48511
+ "type": "string"
48512
+ },
48513
+ "image_urls": {
48514
+ "items": {
48515
+ "type": "string"
48516
+ },
48517
+ "type": "array"
48518
+ },
48519
+ "is_reply": {
48520
+ "type": "boolean"
48521
+ },
48522
+ "like_count": {
48523
+ "type": "integer"
48524
+ },
48525
+ "quote_count": {
48526
+ "type": "integer"
48527
+ },
48528
+ "reply_count": {
48529
+ "type": "integer"
48530
+ },
48531
+ "reply_to": {
48532
+ "type": "string"
48533
+ },
48534
+ "repost_count": {
48535
+ "type": "integer"
48536
+ },
48537
+ "text": {
48538
+ "type": "string"
48539
+ },
48540
+ "url": {
48541
+ "type": "string"
48542
+ },
48543
+ "video_urls": {
48544
+ "items": {
48545
+ "type": "string"
48546
+ },
48547
+ "type": "array"
48548
+ }
48549
+ },
48550
+ "type": "object"
48551
+ },
48552
+ "threads.postResponseDoc": {
48553
+ "properties": {
48554
+ "code": {
48555
+ "example": 200,
48556
+ "type": "integer"
48557
+ },
48558
+ "data": {
48559
+ "$ref": "#/definitions/threads.Post"
48560
+ },
48561
+ "msg": {
48562
+ "example": "OK",
48563
+ "type": "string"
48564
+ }
48565
+ },
48566
+ "type": "object"
48567
+ },
48568
+ "threads.profilePostsResponseDoc": {
48569
+ "properties": {
48570
+ "code": {
48571
+ "example": 200,
48572
+ "type": "integer"
48573
+ },
48574
+ "data": {
48575
+ "$ref": "#/definitions/threads.ProfilePostsResult"
48576
+ },
48577
+ "msg": {
48578
+ "example": "OK",
48579
+ "type": "string"
48580
+ }
48581
+ },
48582
+ "type": "object"
48583
+ },
48584
+ "threads.profileResponseDoc": {
48585
+ "properties": {
48586
+ "code": {
48587
+ "example": 200,
48588
+ "type": "integer"
48589
+ },
48590
+ "data": {
48591
+ "$ref": "#/definitions/threads.Profile"
48592
+ },
48593
+ "msg": {
48594
+ "example": "OK",
48595
+ "type": "string"
48596
+ }
48597
+ },
48598
+ "type": "object"
48599
+ },
48600
+ "threads.repliesResponseDoc": {
48601
+ "properties": {
48602
+ "code": {
48603
+ "example": 200,
48604
+ "type": "integer"
48605
+ },
48606
+ "data": {
48607
+ "$ref": "#/definitions/threads.RepliesResult"
48608
+ },
48609
+ "msg": {
48610
+ "example": "OK",
48611
+ "type": "string"
48612
+ }
48613
+ },
48614
+ "type": "object"
48615
+ },
48616
+ "threads.searchResponseDoc": {
48617
+ "properties": {
48618
+ "code": {
48619
+ "example": 200,
48620
+ "type": "integer"
48621
+ },
48622
+ "data": {
48623
+ "$ref": "#/definitions/threads.SearchResult"
48624
+ },
48625
+ "msg": {
48626
+ "example": "OK",
48627
+ "type": "string"
48628
+ }
48629
+ },
48630
+ "type": "object"
48631
+ },
48373
48632
  "tiktok.Category": {
48374
48633
  "properties": {
48375
48634
  "name": {
@@ -55350,6 +55609,10 @@
55350
55609
  },
55351
55610
  "x.Profile": {
55352
55611
  "properties": {
55612
+ "affiliate_label": {
55613
+ "description": "AffiliateLabel is the small highlighted-affiliation badge X shows next\nto the display name (e.g. \"Prime Video\" for an account run on behalf\nof that brand). Distinct from VerifiedType; empty when the account has\nno highlighted affiliation.",
55614
+ "type": "string"
55615
+ },
55353
55616
  "avatar_url": {
55354
55617
  "type": "string"
55355
55618
  },
@@ -71133,7 +71396,7 @@
71133
71396
  "consumes": [
71134
71397
  "application/json"
71135
71398
  ],
71136
- "description": "Searches the discovered company board registry — which companies are hiring, on which ATS, with how many open roles. status enum: `active`, `empty`, `gone`, `blocked`, `pending`. sort enum: `open_desc`, `company_asc`, `crawled_desc`.",
71399
+ "description": "Searches the discovered company board registry — which companies are hiring, on which ATS, with how many open roles. provider enum: `greenhouse`, `lever`, `ashby`, `workday`, `smartrecruiters`, `workable`, `recruitee`, `rippling`, `personio`, `teamtailor`, `oracle`, `ukg`, `icims`, `eightfold`. status enum: `active`, `empty`, `gone`, `blocked`, `pending`. sort enum: `open_desc`, `company_asc`, `crawled_desc`.",
71137
71400
  "operationId": "datasets-jobs-companies",
71138
71401
  "parameters": [
71139
71402
  {
@@ -71144,6 +71407,22 @@
71144
71407
  },
71145
71408
  {
71146
71409
  "description": "ATS provider filter",
71410
+ "enum": [
71411
+ "greenhouse",
71412
+ "lever",
71413
+ "ashby",
71414
+ "workday",
71415
+ "smartrecruiters",
71416
+ "workable",
71417
+ "recruitee",
71418
+ "rippling",
71419
+ "personio",
71420
+ "teamtailor",
71421
+ "oracle",
71422
+ "ukg",
71423
+ "icims",
71424
+ "eightfold"
71425
+ ],
71147
71426
  "in": "query",
71148
71427
  "name": "provider",
71149
71428
  "type": "string"
@@ -71379,7 +71658,7 @@
71379
71658
  "consumes": [
71380
71659
  "application/json"
71381
71660
  ],
71382
- "description": "Finds crawled job postings within `radius_km` of a `lat`/`lon`, nearest first. Only geocoded postings participate (the geo-enrich worker back-fills coordinates from each posting's location). Open roles only by default. provider enum matches search.",
71661
+ "description": "Finds crawled job postings within `radius_km` of a `lat`/`lon`, nearest first. Only geocoded postings participate (the geo-enrich worker back-fills coordinates from each posting's location). Open roles only by default. provider enum: `greenhouse`, `lever`, `ashby`, `workday`, `smartrecruiters`, `workable`, `recruitee`, `rippling`, `personio`, `teamtailor`, `oracle`, `ukg`, `icims`, `eightfold`.",
71383
71662
  "operationId": "datasets-jobs-nearby",
71384
71663
  "parameters": [
71385
71664
  {
@@ -71404,6 +71683,22 @@
71404
71683
  },
71405
71684
  {
71406
71685
  "description": "ATS provider filter",
71686
+ "enum": [
71687
+ "greenhouse",
71688
+ "lever",
71689
+ "ashby",
71690
+ "workday",
71691
+ "smartrecruiters",
71692
+ "workable",
71693
+ "recruitee",
71694
+ "rippling",
71695
+ "personio",
71696
+ "teamtailor",
71697
+ "oracle",
71698
+ "ukg",
71699
+ "icims",
71700
+ "eightfold"
71701
+ ],
71407
71702
  "in": "query",
71408
71703
  "name": "provider",
71409
71704
  "type": "string"
@@ -71466,7 +71761,7 @@
71466
71761
  "consumes": [
71467
71762
  "application/json"
71468
71763
  ],
71469
- "description": "Full-text + faceted search over every job posting crawled from every discovered company ATS board (Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Workable, Recruitee, Rippling, Personio, Teamtailor, Oracle, UKG). Open roles only by default (set include_closed=true for historical/filled roles). provider enum: `greenhouse`, `lever`, `ashby`, `workday`, `smartrecruiters`, `workable`, `recruitee`, `rippling`, `personio`, `teamtailor`, `oracle`, `ukg`. sort enum: `relevance`, `posted_desc`, `company_asc`.",
71764
+ "description": "Full-text + faceted search over every job posting crawled from every discovered company ATS board (Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Workable, Recruitee, Rippling, Personio, Teamtailor, Oracle, UKG, iCIMS, Eightfold). Open roles only by default (set include_closed=true for historical/filled roles). provider enum: `greenhouse`, `lever`, `ashby`, `workday`, `smartrecruiters`, `workable`, `recruitee`, `rippling`, `personio`, `teamtailor`, `oracle`, `ukg`, `icims`, `eightfold`. sort enum: `relevance`, `posted_desc`, `company_asc`.",
71470
71765
  "operationId": "datasets-jobs-search",
71471
71766
  "parameters": [
71472
71767
  {
@@ -71482,7 +71777,23 @@
71482
71777
  "type": "string"
71483
71778
  },
71484
71779
  {
71485
- "description": "ATS provider filter. Enum: greenhouse, lever, ashby, workday, smartrecruiters, workable, recruitee, rippling, personio, teamtailor, oracle, ukg",
71780
+ "description": "ATS provider filter",
71781
+ "enum": [
71782
+ "greenhouse",
71783
+ "lever",
71784
+ "ashby",
71785
+ "workday",
71786
+ "smartrecruiters",
71787
+ "workable",
71788
+ "recruitee",
71789
+ "rippling",
71790
+ "personio",
71791
+ "teamtailor",
71792
+ "oracle",
71793
+ "ukg",
71794
+ "icims",
71795
+ "eightfold"
71796
+ ],
71486
71797
  "in": "query",
71487
71798
  "name": "provider",
71488
71799
  "type": "string"
@@ -111966,6 +112277,285 @@
111966
112277
  ]
111967
112278
  }
111968
112279
  },
112280
+ "/threads/post/{username}/{code}": {
112281
+ "get": {
112282
+ "description": "Returns the public text, author, canonical URL, and preview image for a Threads post.",
112283
+ "operationId": "threads-post",
112284
+ "parameters": [
112285
+ {
112286
+ "description": "Threads username",
112287
+ "in": "path",
112288
+ "name": "username",
112289
+ "required": true,
112290
+ "type": "string"
112291
+ },
112292
+ {
112293
+ "description": "Threads post code",
112294
+ "in": "path",
112295
+ "name": "code",
112296
+ "required": true,
112297
+ "type": "string"
112298
+ }
112299
+ ],
112300
+ "produces": [
112301
+ "application/json"
112302
+ ],
112303
+ "responses": {
112304
+ "200": {
112305
+ "description": "Wrapped post payload",
112306
+ "schema": {
112307
+ "$ref": "#/definitions/threads.postResponseDoc"
112308
+ }
112309
+ },
112310
+ "400": {
112311
+ "description": "Invalid username or post code",
112312
+ "schema": {
112313
+ "$ref": "#/definitions/app.Response"
112314
+ }
112315
+ },
112316
+ "404": {
112317
+ "description": "Post not found",
112318
+ "schema": {
112319
+ "$ref": "#/definitions/app.Response"
112320
+ }
112321
+ },
112322
+ "503": {
112323
+ "description": "Upstream error or parser drift",
112324
+ "schema": {
112325
+ "$ref": "#/definitions/app.Response"
112326
+ }
112327
+ }
112328
+ },
112329
+ "security": [
112330
+ {
112331
+ "ApiKeyAuth": []
112332
+ }
112333
+ ],
112334
+ "summary": "Retrieve a public Threads post",
112335
+ "tags": [
112336
+ "Threads"
112337
+ ]
112338
+ }
112339
+ },
112340
+ "/threads/post/{username}/{code}/replies": {
112341
+ "get": {
112342
+ "description": "Returns the public replies currently exposed to logged-out visitors. The response identifies when Threads reports additional replies but withholds a usable continuation cursor.",
112343
+ "operationId": "threads-post-replies",
112344
+ "parameters": [
112345
+ {
112346
+ "description": "Threads username",
112347
+ "in": "path",
112348
+ "name": "username",
112349
+ "required": true,
112350
+ "type": "string"
112351
+ },
112352
+ {
112353
+ "description": "Threads post code",
112354
+ "in": "path",
112355
+ "name": "code",
112356
+ "required": true,
112357
+ "type": "string"
112358
+ }
112359
+ ],
112360
+ "produces": [
112361
+ "application/json"
112362
+ ],
112363
+ "responses": {
112364
+ "200": {
112365
+ "description": "Wrapped replies payload",
112366
+ "schema": {
112367
+ "$ref": "#/definitions/threads.repliesResponseDoc"
112368
+ }
112369
+ },
112370
+ "400": {
112371
+ "description": "Invalid username or post code",
112372
+ "schema": {
112373
+ "$ref": "#/definitions/app.Response"
112374
+ }
112375
+ },
112376
+ "404": {
112377
+ "description": "Post not found",
112378
+ "schema": {
112379
+ "$ref": "#/definitions/app.Response"
112380
+ }
112381
+ },
112382
+ "503": {
112383
+ "description": "Upstream error or parser drift",
112384
+ "schema": {
112385
+ "$ref": "#/definitions/app.Response"
112386
+ }
112387
+ }
112388
+ },
112389
+ "security": [
112390
+ {
112391
+ "ApiKeyAuth": []
112392
+ }
112393
+ ],
112394
+ "summary": "Retrieve public replies to a Threads post",
112395
+ "tags": [
112396
+ "Threads"
112397
+ ]
112398
+ }
112399
+ },
112400
+ "/threads/profile/{username}": {
112401
+ "get": {
112402
+ "description": "Returns public profile metadata for a Threads username, including the visible biography and counts.",
112403
+ "operationId": "threads-profile",
112404
+ "parameters": [
112405
+ {
112406
+ "description": "Threads username",
112407
+ "in": "path",
112408
+ "name": "username",
112409
+ "required": true,
112410
+ "type": "string"
112411
+ }
112412
+ ],
112413
+ "produces": [
112414
+ "application/json"
112415
+ ],
112416
+ "responses": {
112417
+ "200": {
112418
+ "description": "Wrapped profile payload",
112419
+ "schema": {
112420
+ "$ref": "#/definitions/threads.profileResponseDoc"
112421
+ }
112422
+ },
112423
+ "400": {
112424
+ "description": "Invalid username",
112425
+ "schema": {
112426
+ "$ref": "#/definitions/app.Response"
112427
+ }
112428
+ },
112429
+ "404": {
112430
+ "description": "Profile not found",
112431
+ "schema": {
112432
+ "$ref": "#/definitions/app.Response"
112433
+ }
112434
+ },
112435
+ "503": {
112436
+ "description": "Upstream error or parser drift",
112437
+ "schema": {
112438
+ "$ref": "#/definitions/app.Response"
112439
+ }
112440
+ }
112441
+ },
112442
+ "security": [
112443
+ {
112444
+ "ApiKeyAuth": []
112445
+ }
112446
+ ],
112447
+ "summary": "Retrieve a public Threads profile",
112448
+ "tags": [
112449
+ "Threads"
112450
+ ]
112451
+ }
112452
+ },
112453
+ "/threads/profile/{username}/posts": {
112454
+ "get": {
112455
+ "description": "Returns public profile posts with an opaque continuation cursor when more posts are available.",
112456
+ "operationId": "threads-profile-posts",
112457
+ "parameters": [
112458
+ {
112459
+ "description": "Threads username",
112460
+ "in": "path",
112461
+ "name": "username",
112462
+ "required": true,
112463
+ "type": "string"
112464
+ },
112465
+ {
112466
+ "description": "Opaque cursor returned by the previous response",
112467
+ "in": "query",
112468
+ "name": "cursor",
112469
+ "type": "string"
112470
+ }
112471
+ ],
112472
+ "produces": [
112473
+ "application/json"
112474
+ ],
112475
+ "responses": {
112476
+ "200": {
112477
+ "description": "Wrapped profile posts payload",
112478
+ "schema": {
112479
+ "$ref": "#/definitions/threads.profilePostsResponseDoc"
112480
+ }
112481
+ },
112482
+ "400": {
112483
+ "description": "Invalid username or cursor",
112484
+ "schema": {
112485
+ "$ref": "#/definitions/app.Response"
112486
+ }
112487
+ },
112488
+ "404": {
112489
+ "description": "Profile not found",
112490
+ "schema": {
112491
+ "$ref": "#/definitions/app.Response"
112492
+ }
112493
+ },
112494
+ "503": {
112495
+ "description": "Upstream error or parser drift",
112496
+ "schema": {
112497
+ "$ref": "#/definitions/app.Response"
112498
+ }
112499
+ }
112500
+ },
112501
+ "security": [
112502
+ {
112503
+ "ApiKeyAuth": []
112504
+ }
112505
+ ],
112506
+ "summary": "Retrieve public posts from a Threads profile",
112507
+ "tags": [
112508
+ "Threads"
112509
+ ]
112510
+ }
112511
+ },
112512
+ "/threads/search": {
112513
+ "get": {
112514
+ "description": "Returns the public first page of Threads search results for a query. Logged-out search does not expose a continuation cursor.",
112515
+ "operationId": "threads-search",
112516
+ "parameters": [
112517
+ {
112518
+ "description": "Search query (1-100 characters)",
112519
+ "in": "query",
112520
+ "name": "q",
112521
+ "required": true,
112522
+ "type": "string"
112523
+ }
112524
+ ],
112525
+ "produces": [
112526
+ "application/json"
112527
+ ],
112528
+ "responses": {
112529
+ "200": {
112530
+ "description": "Wrapped search payload",
112531
+ "schema": {
112532
+ "$ref": "#/definitions/threads.searchResponseDoc"
112533
+ }
112534
+ },
112535
+ "400": {
112536
+ "description": "Invalid query",
112537
+ "schema": {
112538
+ "$ref": "#/definitions/app.Response"
112539
+ }
112540
+ },
112541
+ "503": {
112542
+ "description": "Upstream error or parser drift",
112543
+ "schema": {
112544
+ "$ref": "#/definitions/app.Response"
112545
+ }
112546
+ }
112547
+ },
112548
+ "security": [
112549
+ {
112550
+ "ApiKeyAuth": []
112551
+ }
112552
+ ],
112553
+ "summary": "Search public Threads posts",
112554
+ "tags": [
112555
+ "Threads"
112556
+ ]
112557
+ }
112558
+ },
111969
112559
  "/tiktok/category": {
111970
112560
  "get": {
111971
112561
  "consumes": [
data/sig/crawlora.rbs CHANGED
@@ -204,12 +204,12 @@ module Crawlora
204
204
  def housing_markets_facets: (?facet: String, ?q: String, ?region_type: String, ?state_code: String, ?property_type: String, ?parent_metro_code: String, ?zip_code: String, ?period: String, ?latest: bool, ?min_median_sale_price: Float, ?max_median_sale_price: Float, ?min_median_list_price: Float, ?max_median_list_price: Float, ?min_price_to_income: Float, ?max_price_to_income: Float, ?min_salary_to_buy: Integer, ?max_salary_to_buy: Integer, ?min_median_dom: Float, ?max_median_dom: Float, ?min_inventory: Integer, ?max_inventory: Integer, ?min_homes_sold: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
205
205
  def housing_markets_item: (?region_type: String, ?table_id: Integer, ?period: String, ?property_type: String, ?history: bool, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
206
206
  def housing_markets_search: (?q: String, ?region_type: String, ?state_code: String, ?property_type: String, ?parent_metro_code: String, ?zip_code: String, ?period: String, ?latest: bool, ?min_median_sale_price: Float, ?max_median_sale_price: Float, ?min_median_list_price: Float, ?max_median_list_price: Float, ?min_price_to_income: Float, ?max_price_to_income: Float, ?min_salary_to_buy: Integer, ?max_salary_to_buy: Integer, ?min_median_dom: Float, ?max_median_dom: Float, ?min_inventory: Integer, ?max_inventory: Integer, ?min_homes_sold: Integer, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
207
- def jobs_companies: (?q: String, ?provider: String, ?status: String, ?min_open_roles: Integer, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
207
+ def jobs_companies: (?q: String, ?provider: "greenhouse" | "lever" | "ashby" | "workday" | "smartrecruiters" | "workable" | "recruitee" | "rippling" | "personio" | "teamtailor" | "oracle" | "ukg" | "icims" | "eightfold", ?status: String, ?min_open_roles: Integer, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
208
208
  def jobs_company_item: (?id: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
209
209
  def jobs_facets: (?size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
210
210
  def jobs_item: (?id: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
211
- def jobs_nearby: (?lat: Float, ?lon: Float, ?radius_km: Float, ?provider: String, ?include_closed: bool, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
212
- def jobs_search: (?q: String, ?company: String, ?provider: String, ?department: String, ?location: String, ?employment_type: String, ?remote: bool, ?include_closed: bool, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
211
+ def jobs_nearby: (?lat: Float, ?lon: Float, ?radius_km: Float, ?provider: "greenhouse" | "lever" | "ashby" | "workday" | "smartrecruiters" | "workable" | "recruitee" | "rippling" | "personio" | "teamtailor" | "oracle" | "ukg" | "icims" | "eightfold", ?include_closed: bool, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
212
+ def jobs_search: (?q: String, ?company: String, ?provider: "greenhouse" | "lever" | "ashby" | "workday" | "smartrecruiters" | "workable" | "recruitee" | "rippling" | "personio" | "teamtailor" | "oracle" | "ukg" | "icims" | "eightfold", ?department: String, ?location: String, ?employment_type: String, ?remote: bool, ?include_closed: bool, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
213
213
  def journalists_facets: (?facet: String, ?q: String, ?outlet: String, ?vertical: String, ?topic: String, ?contact_type: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
214
214
  def journalists_item: (?outlet: String, ?slug: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
215
215
  def journalists_search: (?q: String, ?outlet: String, ?vertical: String, ?topic: String, ?contact_type: String, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
@@ -876,6 +876,15 @@ module Crawlora
876
876
  def top_sets: (?limit: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
877
877
  end
878
878
 
879
+ class ThreadsGroup
880
+ def initialize: (Client, Hash[String, String]) -> void
881
+ def post: (?username: String, ?code: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
882
+ def post_replies: (?username: String, ?code: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
883
+ def profile: (?username: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
884
+ def profile_posts: (?username: String, ?cursor: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
885
+ def search: (?q: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
886
+ end
887
+
879
888
  class TiktokGroup
880
889
  def initialize: (Client, Hash[String, String]) -> void
881
890
  def category: (?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crawlora
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.20.0.pre.sdk.1
4
+ version: 1.22.0.pre.sdk.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Crawlora
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-18 00:00:00.000000000 Z
11
+ date: 2026-07-19 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: 'Crawlora is a web-scraping API for structured public web data — search,
14
14
  marketplace, social, finance, media, reviews, and geodata — without running your