crawlora 1.9.0.pre.sdk.1 → 1.10.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: 7aa60c14f4add6ccd239be2910ab88ba3d965f0921d80624707de88f1ab8bb4e
4
- data.tar.gz: a3d41fa42b993f9cc7a570856a0607b7f7778d2e726cf51aee8cf74f50c412a0
3
+ metadata.gz: ebe3865c6c35f19e0f7a27a084275fb0b876ebd54b56118aaec0fb710ea736f3
4
+ data.tar.gz: d8150ce63f48d6aa8f08be44796f1d1d69cce4b21b2e209cdd05bf9267cd83a9
5
5
  SHA512:
6
- metadata.gz: a788f05042ac4fae8ce0ea9268f3d23cac9ca3f91f41931dc9f774f8d4ef4ad5b039fb1bec150c6e9c16b2d8d15df69d37d3705bb25f308d1683d2242603af62
7
- data.tar.gz: 47073edee1a2ebc1c6f396972df43cafb31ed4b8ec4eaaf01e8481ab287958f2b57f8d67a8f0a18fbbaffca040205697cb54c8ef4d66125eedf19e053e686620
6
+ metadata.gz: 2a6a1239650b61f9f0eda19dabb11d85e0748f5510ef822d8605d88f6c3165b93f6bfa17f661fb25a59e9937b9eaa4156d949d03bd1482f2d83b8c356a1a36b6
7
+ data.tar.gz: 0067c81f878212c94427ca91f450066dc3fa71ea8ad7651711576b5560554cf0a31d573486cfca5b64dde50bf338326779474fc36417dd58a0866436626d5b85
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## v1.10.0-sdk.1
4
+
5
+ - Regenerated from the public API contract (525 to 529 operations). Adds the
6
+ **Airbnb Markets dataset** (4 endpoints): aggregate short-term-rental market
7
+ statistics -- listing supply, Superhost share, ratings, and nightly-price bands
8
+ -- rolled up by country, metro, and geo cell (search, item lookup, facets, and
9
+ nearby density). Aggregate-only: no individual listings or hosts.
10
+
3
11
  ## v1.9.0-sdk.1
4
12
 
5
13
  - Regenerated from the public API contract (499 to 525 operations). Adds four
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: `525`
5
+ Total operations: `529`
6
6
 
7
7
  | Group | SDK method | Operation ID | HTTP | Params | Auth | Response | Notes |
8
8
  | --- | --- | --- | --- | --- | --- | --- | --- |
@@ -93,6 +93,10 @@ Total operations: `525`
93
93
  | web | `web.antibot_check` | `antibot-check` | `POST /diagnostics/antibot-check` | `request` (body String required) | `ApiKeyAuth` | `WebAntibotCheckResponse` | |
94
94
  | web | `web.scrape` | `web-scrape` | `POST /web/scrape` | `scrapeOption` (body String required) | `ApiKeyAuth` | `WebScrapeResponse` | |
95
95
  | datasets | `datasets.list` | `datasets-list` | `GET /datasets` | none | `ApiKeyAuth` | `DatasetsListResponse` | |
96
+ | datasets | `datasets.airbnb_markets_facets` | `datasets-airbnb-markets-facets` | `GET /datasets/airbnb-markets/facets` | `facet` (query String required)<br>`group_by` (query String)<br>`country` (query String)<br>`market` (query String)<br>`superhost` (query bool)<br>`min_rating` (query Float)<br>`min_review_count` (query Integer)<br>`active_since` (query String)<br>`min_listings` (query Integer) | `ApiKeyAuth` | `DatasetsAirbnbMarketsFacetsResponse` | |
97
+ | datasets | `datasets.airbnb_markets_item` | `datasets-airbnb-markets-item` | `GET /datasets/airbnb-markets/items/{country}` | `country` (path String required) | `ApiKeyAuth` | `DatasetsAirbnbMarketsItemResponse` | |
98
+ | datasets | `datasets.airbnb_markets_nearby` | `datasets-airbnb-markets-nearby` | `GET /datasets/airbnb-markets/nearby` | `lat` (query Float required)<br>`lon` (query Float required)<br>`radius_m` (query Integer required)<br>`precision` (query Integer)<br>`min_listings` (query Integer)<br>`country` (query String)<br>`superhost` (query bool)<br>`min_rating` (query Float)<br>`active_since` (query String) | `ApiKeyAuth` | `DatasetsAirbnbMarketsNearbyResponse` | |
99
+ | datasets | `datasets.airbnb_markets_search` | `datasets-airbnb-markets-search` | `GET /datasets/airbnb-markets/search` | `group_by` (query String)<br>`country` (query String)<br>`market` (query String)<br>`superhost` (query bool)<br>`min_rating` (query Float)<br>`min_review_count` (query Integer)<br>`active_since` (query String)<br>`min_listings` (query Integer)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsAirbnbMarketsSearchResponse` | |
96
100
  | datasets | `datasets.apps_charts_search` | `datasets-apps-charts-search` | `GET /datasets/apps-charts/search` | `q` (query String)<br>`store` (query String)<br>`chart_type` (query String)<br>`collection` (query String)<br>`category` (query String)<br>`country` (query String)<br>`app_id` (query String)<br>`date` (query String)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsAppsChartsSearchResponse` | |
97
101
  | datasets | `datasets.apps_reviews_search` | `datasets-apps-reviews-search` | `GET /datasets/apps-reviews/search` | `q` (query String)<br>`store` (query String)<br>`app_id` (query String)<br>`country` (query String)<br>`min_score` (query Integer)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsAppsReviewsSearchResponse` | |
98
102
  | datasets | `datasets.apps_search` | `datasets-apps-search` | `GET /datasets/apps/search` | `q` (query String)<br>`store` (query String)<br>`category` (query String)<br>`country` (query String)<br>`developer` (query String)<br>`free` (query bool)<br>`min_rating` (query Float)<br>`min_reviews` (query Integer)<br>`sort` (query String)<br>`page` (query Integer)<br>`page_size` (query Integer) | `ApiKeyAuth` | `DatasetsAppsSearchResponse` | |
@@ -4273,6 +4273,237 @@ module Crawlora
4273
4273
  "ApiKeyAuth"
4274
4274
  ]
4275
4275
  },
4276
+ "datasets-airbnb-markets-facets" => {
4277
+ "id" => "datasets-airbnb-markets-facets",
4278
+ "method" => "GET",
4279
+ "path" => "/datasets/airbnb-markets/facets",
4280
+ "pathParams" => [],
4281
+ "queryParams" => [
4282
+ {
4283
+ "name" => "facet",
4284
+ "in" => "query",
4285
+ "type" => "string",
4286
+ "required" => true
4287
+ },
4288
+ {
4289
+ "name" => "group_by",
4290
+ "in" => "query",
4291
+ "type" => "string"
4292
+ },
4293
+ {
4294
+ "name" => "country",
4295
+ "in" => "query",
4296
+ "type" => "string"
4297
+ },
4298
+ {
4299
+ "name" => "market",
4300
+ "in" => "query",
4301
+ "type" => "string"
4302
+ },
4303
+ {
4304
+ "name" => "superhost",
4305
+ "in" => "query",
4306
+ "type" => "boolean"
4307
+ },
4308
+ {
4309
+ "name" => "min_rating",
4310
+ "in" => "query",
4311
+ "type" => "number"
4312
+ },
4313
+ {
4314
+ "name" => "min_review_count",
4315
+ "in" => "query",
4316
+ "type" => "integer"
4317
+ },
4318
+ {
4319
+ "name" => "active_since",
4320
+ "in" => "query",
4321
+ "type" => "string"
4322
+ },
4323
+ {
4324
+ "name" => "min_listings",
4325
+ "in" => "query",
4326
+ "type" => "integer"
4327
+ }
4328
+ ],
4329
+ "formParams" => [],
4330
+ "bodyParam" => nil,
4331
+ "bodyRequired" => false,
4332
+ "consumes" => [
4333
+ "application/json"
4334
+ ],
4335
+ "produces" => [
4336
+ "application/json"
4337
+ ],
4338
+ "security" => [
4339
+ "ApiKeyAuth"
4340
+ ]
4341
+ },
4342
+ "datasets-airbnb-markets-item" => {
4343
+ "id" => "datasets-airbnb-markets-item",
4344
+ "method" => "GET",
4345
+ "path" => "/datasets/airbnb-markets/items/{country}",
4346
+ "pathParams" => [
4347
+ "country"
4348
+ ],
4349
+ "queryParams" => [],
4350
+ "formParams" => [],
4351
+ "bodyParam" => nil,
4352
+ "bodyRequired" => false,
4353
+ "consumes" => [
4354
+ "application/json"
4355
+ ],
4356
+ "produces" => [
4357
+ "application/json"
4358
+ ],
4359
+ "security" => [
4360
+ "ApiKeyAuth"
4361
+ ]
4362
+ },
4363
+ "datasets-airbnb-markets-nearby" => {
4364
+ "id" => "datasets-airbnb-markets-nearby",
4365
+ "method" => "GET",
4366
+ "path" => "/datasets/airbnb-markets/nearby",
4367
+ "pathParams" => [],
4368
+ "queryParams" => [
4369
+ {
4370
+ "name" => "lat",
4371
+ "in" => "query",
4372
+ "type" => "number",
4373
+ "required" => true
4374
+ },
4375
+ {
4376
+ "name" => "lon",
4377
+ "in" => "query",
4378
+ "type" => "number",
4379
+ "required" => true
4380
+ },
4381
+ {
4382
+ "name" => "radius_m",
4383
+ "in" => "query",
4384
+ "type" => "integer",
4385
+ "required" => true
4386
+ },
4387
+ {
4388
+ "name" => "precision",
4389
+ "in" => "query",
4390
+ "type" => "integer"
4391
+ },
4392
+ {
4393
+ "name" => "min_listings",
4394
+ "in" => "query",
4395
+ "type" => "integer"
4396
+ },
4397
+ {
4398
+ "name" => "country",
4399
+ "in" => "query",
4400
+ "type" => "string"
4401
+ },
4402
+ {
4403
+ "name" => "superhost",
4404
+ "in" => "query",
4405
+ "type" => "boolean"
4406
+ },
4407
+ {
4408
+ "name" => "min_rating",
4409
+ "in" => "query",
4410
+ "type" => "number"
4411
+ },
4412
+ {
4413
+ "name" => "active_since",
4414
+ "in" => "query",
4415
+ "type" => "string"
4416
+ }
4417
+ ],
4418
+ "formParams" => [],
4419
+ "bodyParam" => nil,
4420
+ "bodyRequired" => false,
4421
+ "consumes" => [
4422
+ "application/json"
4423
+ ],
4424
+ "produces" => [
4425
+ "application/json"
4426
+ ],
4427
+ "security" => [
4428
+ "ApiKeyAuth"
4429
+ ]
4430
+ },
4431
+ "datasets-airbnb-markets-search" => {
4432
+ "id" => "datasets-airbnb-markets-search",
4433
+ "method" => "GET",
4434
+ "path" => "/datasets/airbnb-markets/search",
4435
+ "pathParams" => [],
4436
+ "queryParams" => [
4437
+ {
4438
+ "name" => "group_by",
4439
+ "in" => "query",
4440
+ "type" => "string"
4441
+ },
4442
+ {
4443
+ "name" => "country",
4444
+ "in" => "query",
4445
+ "type" => "string"
4446
+ },
4447
+ {
4448
+ "name" => "market",
4449
+ "in" => "query",
4450
+ "type" => "string"
4451
+ },
4452
+ {
4453
+ "name" => "superhost",
4454
+ "in" => "query",
4455
+ "type" => "boolean"
4456
+ },
4457
+ {
4458
+ "name" => "min_rating",
4459
+ "in" => "query",
4460
+ "type" => "number"
4461
+ },
4462
+ {
4463
+ "name" => "min_review_count",
4464
+ "in" => "query",
4465
+ "type" => "integer"
4466
+ },
4467
+ {
4468
+ "name" => "active_since",
4469
+ "in" => "query",
4470
+ "type" => "string"
4471
+ },
4472
+ {
4473
+ "name" => "min_listings",
4474
+ "in" => "query",
4475
+ "type" => "integer"
4476
+ },
4477
+ {
4478
+ "name" => "sort",
4479
+ "in" => "query",
4480
+ "type" => "string"
4481
+ },
4482
+ {
4483
+ "name" => "page",
4484
+ "in" => "query",
4485
+ "type" => "integer"
4486
+ },
4487
+ {
4488
+ "name" => "page_size",
4489
+ "in" => "query",
4490
+ "type" => "integer"
4491
+ }
4492
+ ],
4493
+ "formParams" => [],
4494
+ "bodyParam" => nil,
4495
+ "bodyRequired" => false,
4496
+ "consumes" => [
4497
+ "application/json"
4498
+ ],
4499
+ "produces" => [
4500
+ "application/json"
4501
+ ],
4502
+ "security" => [
4503
+ "ApiKeyAuth"
4504
+ ],
4505
+ "paginatable" => true
4506
+ },
4276
4507
  "datasets-apps-charts-search" => {
4277
4508
  "id" => "datasets-apps-charts-search",
4278
4509
  "method" => "GET",
@@ -20368,6 +20599,10 @@ module Crawlora
20368
20599
  },
20369
20600
  "datasets" => {
20370
20601
  "list" => "datasets-list",
20602
+ "airbnb_markets_facets" => "datasets-airbnb-markets-facets",
20603
+ "airbnb_markets_item" => "datasets-airbnb-markets-item",
20604
+ "airbnb_markets_nearby" => "datasets-airbnb-markets-nearby",
20605
+ "airbnb_markets_search" => "datasets-airbnb-markets-search",
20371
20606
  "apps_charts_search" => "datasets-apps-charts-search",
20372
20607
  "apps_reviews_search" => "datasets-apps-reviews-search",
20373
20608
  "apps_search" => "datasets-apps-search",
@@ -20873,7 +21108,7 @@ module Crawlora
20873
21108
  }
20874
21109
  }.freeze
20875
21110
 
20876
- OPERATION_COUNT = 525
21111
+ OPERATION_COUNT = 529
20877
21112
 
20878
21113
  module OperationId
20879
21114
  AIRBNB_ROOM = "airbnb-room"
@@ -20959,6 +21194,10 @@ module Crawlora
20959
21194
  COIN_GECKO_TOKEN_UNLOCKS = "coingecko-token-unlocks"
20960
21195
  COIN_GECKO_TREASURIES = "coingecko-treasuries"
20961
21196
  COIN_GECKO_TRENDING = "coingecko-trending"
21197
+ DATASETS_AIRBNB_MARKETS_FACETS = "datasets-airbnb-markets-facets"
21198
+ DATASETS_AIRBNB_MARKETS_ITEM = "datasets-airbnb-markets-item"
21199
+ DATASETS_AIRBNB_MARKETS_NEARBY = "datasets-airbnb-markets-nearby"
21200
+ DATASETS_AIRBNB_MARKETS_SEARCH = "datasets-airbnb-markets-search"
20962
21201
  DATASETS_APPS_CHARTS_SEARCH = "datasets-apps-charts-search"
20963
21202
  DATASETS_APPS_REVIEWS_SEARCH = "datasets-apps-reviews-search"
20964
21203
  DATASETS_APPS_SEARCH = "datasets-apps-search"
@@ -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.9.0-sdk.1"
8
+ VERSION = "1.10.0-sdk.1"
9
9
  end
data/openapi/public.json CHANGED
@@ -8479,6 +8479,84 @@
8479
8479
  },
8480
8480
  "type": "object"
8481
8481
  },
8482
+ "datasets.AirbnbMarketFacetResponse": {
8483
+ "properties": {
8484
+ "dataset": {
8485
+ "type": "string"
8486
+ },
8487
+ "facet": {
8488
+ "type": "string"
8489
+ },
8490
+ "items": {
8491
+ "items": {
8492
+ "$ref": "#/definitions/es.AirbnbMarketFacetItem"
8493
+ },
8494
+ "type": "array"
8495
+ }
8496
+ },
8497
+ "type": "object"
8498
+ },
8499
+ "datasets.AirbnbMarketNearbyResponse": {
8500
+ "properties": {
8501
+ "cells": {
8502
+ "items": {
8503
+ "$ref": "#/definitions/es.AirbnbDensityCell"
8504
+ },
8505
+ "type": "array"
8506
+ },
8507
+ "dataset": {
8508
+ "type": "string"
8509
+ },
8510
+ "lat": {
8511
+ "type": "number"
8512
+ },
8513
+ "lon": {
8514
+ "type": "number"
8515
+ },
8516
+ "precision": {
8517
+ "type": "integer"
8518
+ },
8519
+ "radius_m": {
8520
+ "type": "integer"
8521
+ },
8522
+ "total": {
8523
+ "type": "integer"
8524
+ }
8525
+ },
8526
+ "type": "object"
8527
+ },
8528
+ "datasets.AirbnbMarketSearchResponse": {
8529
+ "properties": {
8530
+ "dataset": {
8531
+ "type": "string"
8532
+ },
8533
+ "group_by": {
8534
+ "type": "string"
8535
+ },
8536
+ "items": {
8537
+ "items": {
8538
+ "$ref": "#/definitions/es.AirbnbMarketCell"
8539
+ },
8540
+ "type": "array"
8541
+ },
8542
+ "min_listings": {
8543
+ "type": "integer"
8544
+ },
8545
+ "page": {
8546
+ "type": "integer"
8547
+ },
8548
+ "page_size": {
8549
+ "type": "integer"
8550
+ },
8551
+ "sort": {
8552
+ "type": "string"
8553
+ },
8554
+ "total": {
8555
+ "type": "integer"
8556
+ }
8557
+ },
8558
+ "type": "object"
8559
+ },
8482
8560
  "datasets.AppsSearchResponse": {
8483
8561
  "properties": {
8484
8562
  "dataset": {
@@ -8703,6 +8781,70 @@
8703
8781
  },
8704
8782
  "type": "object"
8705
8783
  },
8784
+ "datasets.airbnbMarketResponseDoc": {
8785
+ "properties": {
8786
+ "code": {
8787
+ "example": 200,
8788
+ "type": "integer"
8789
+ },
8790
+ "data": {
8791
+ "$ref": "#/definitions/es.AirbnbMarketDetail"
8792
+ },
8793
+ "msg": {
8794
+ "example": "OK",
8795
+ "type": "string"
8796
+ }
8797
+ },
8798
+ "type": "object"
8799
+ },
8800
+ "datasets.airbnbMarketsFacetResponseDoc": {
8801
+ "properties": {
8802
+ "code": {
8803
+ "example": 200,
8804
+ "type": "integer"
8805
+ },
8806
+ "data": {
8807
+ "$ref": "#/definitions/datasets.AirbnbMarketFacetResponse"
8808
+ },
8809
+ "msg": {
8810
+ "example": "OK",
8811
+ "type": "string"
8812
+ }
8813
+ },
8814
+ "type": "object"
8815
+ },
8816
+ "datasets.airbnbMarketsNearbyResponseDoc": {
8817
+ "properties": {
8818
+ "code": {
8819
+ "example": 200,
8820
+ "type": "integer"
8821
+ },
8822
+ "data": {
8823
+ "$ref": "#/definitions/datasets.AirbnbMarketNearbyResponse"
8824
+ },
8825
+ "msg": {
8826
+ "example": "OK",
8827
+ "type": "string"
8828
+ }
8829
+ },
8830
+ "type": "object"
8831
+ },
8832
+ "datasets.airbnbMarketsSearchResponseDoc": {
8833
+ "properties": {
8834
+ "code": {
8835
+ "example": 200,
8836
+ "type": "integer"
8837
+ },
8838
+ "data": {
8839
+ "$ref": "#/definitions/datasets.AirbnbMarketSearchResponse"
8840
+ },
8841
+ "msg": {
8842
+ "example": "OK",
8843
+ "type": "string"
8844
+ }
8845
+ },
8846
+ "type": "object"
8847
+ },
8706
8848
  "datasets.appsSearchResponseDoc": {
8707
8849
  "properties": {
8708
8850
  "code": {
@@ -9538,6 +9680,144 @@
9538
9680
  },
9539
9681
  "type": "object"
9540
9682
  },
9683
+ "es.AirbnbDensityCell": {
9684
+ "properties": {
9685
+ "geohash": {
9686
+ "type": "string"
9687
+ },
9688
+ "lat": {
9689
+ "type": "number"
9690
+ },
9691
+ "listings": {
9692
+ "type": "integer"
9693
+ },
9694
+ "lon": {
9695
+ "type": "number"
9696
+ },
9697
+ "superhost_listings": {
9698
+ "type": "integer"
9699
+ },
9700
+ "superhost_pct": {
9701
+ "type": "number"
9702
+ }
9703
+ },
9704
+ "type": "object"
9705
+ },
9706
+ "es.AirbnbGeoBounds": {
9707
+ "properties": {
9708
+ "bottom_right": {
9709
+ "$ref": "#/definitions/es.GeoPoint"
9710
+ },
9711
+ "top_left": {
9712
+ "$ref": "#/definitions/es.GeoPoint"
9713
+ }
9714
+ },
9715
+ "type": "object"
9716
+ },
9717
+ "es.AirbnbMarketCell": {
9718
+ "properties": {
9719
+ "avg_rating": {
9720
+ "type": "number"
9721
+ },
9722
+ "avg_review_count": {
9723
+ "type": "number"
9724
+ },
9725
+ "key": {
9726
+ "type": "string"
9727
+ },
9728
+ "last_seen": {
9729
+ "type": "string"
9730
+ },
9731
+ "listings": {
9732
+ "type": "integer"
9733
+ },
9734
+ "rated_listings": {
9735
+ "type": "integer"
9736
+ },
9737
+ "superhost_listings": {
9738
+ "type": "integer"
9739
+ },
9740
+ "superhost_pct": {
9741
+ "type": "number"
9742
+ }
9743
+ },
9744
+ "type": "object"
9745
+ },
9746
+ "es.AirbnbMarketDetail": {
9747
+ "properties": {
9748
+ "avg_rating": {
9749
+ "type": "number"
9750
+ },
9751
+ "avg_review_count": {
9752
+ "type": "number"
9753
+ },
9754
+ "bounds": {
9755
+ "$ref": "#/definitions/es.AirbnbGeoBounds"
9756
+ },
9757
+ "country": {
9758
+ "type": "string"
9759
+ },
9760
+ "currencies": {
9761
+ "items": {
9762
+ "$ref": "#/definitions/es.AirbnbPriceStats"
9763
+ },
9764
+ "type": "array"
9765
+ },
9766
+ "last_seen": {
9767
+ "type": "string"
9768
+ },
9769
+ "listings": {
9770
+ "type": "integer"
9771
+ },
9772
+ "metros": {
9773
+ "items": {
9774
+ "$ref": "#/definitions/es.AirbnbMarketCell"
9775
+ },
9776
+ "type": "array"
9777
+ },
9778
+ "rated_listings": {
9779
+ "type": "integer"
9780
+ },
9781
+ "superhost_listings": {
9782
+ "type": "integer"
9783
+ },
9784
+ "superhost_pct": {
9785
+ "type": "number"
9786
+ }
9787
+ },
9788
+ "type": "object"
9789
+ },
9790
+ "es.AirbnbMarketFacetItem": {
9791
+ "properties": {
9792
+ "count": {
9793
+ "type": "integer"
9794
+ },
9795
+ "value": {
9796
+ "type": "string"
9797
+ }
9798
+ },
9799
+ "type": "object"
9800
+ },
9801
+ "es.AirbnbPriceStats": {
9802
+ "properties": {
9803
+ "currency": {
9804
+ "type": "string"
9805
+ },
9806
+ "listings": {
9807
+ "type": "integer"
9808
+ },
9809
+ "p25": {
9810
+ "type": "number"
9811
+ },
9812
+ "p50": {
9813
+ "type": "number"
9814
+ },
9815
+ "p75": {
9816
+ "type": "number"
9817
+ }
9818
+ },
9819
+ "type": "object"
9820
+ },
9541
9821
  "es.AppRecord": {
9542
9822
  "properties": {
9543
9823
  "android_max_installs": {
@@ -48059,6 +48339,393 @@
48059
48339
  ]
48060
48340
  }
48061
48341
  },
48342
+ "/datasets/airbnb-markets/facets": {
48343
+ "get": {
48344
+ "consumes": [
48345
+ "application/json"
48346
+ ],
48347
+ "description": "Returns suppressed distribution counts over the Airbnb markets dataset, honoring the same filters as search. Facet enum: `country`, `market`, `currency`, `superhost`, `rating_band`, `review_band`. group_by enum: `country`, `market`.",
48348
+ "operationId": "datasets-airbnb-markets-facets",
48349
+ "parameters": [
48350
+ {
48351
+ "description": "Facet enum: country, market, currency, superhost, rating_band, review_band",
48352
+ "in": "query",
48353
+ "name": "facet",
48354
+ "required": true,
48355
+ "type": "string"
48356
+ },
48357
+ {
48358
+ "description": "Aggregate cell dimension enum: country, market. Defaults to country",
48359
+ "in": "query",
48360
+ "name": "group_by",
48361
+ "type": "string"
48362
+ },
48363
+ {
48364
+ "description": "Exact ISO-3166-1 alpha-2 country filter, e.g. FR",
48365
+ "in": "query",
48366
+ "name": "country",
48367
+ "type": "string"
48368
+ },
48369
+ {
48370
+ "description": "Exact metro-market filter, max 128 characters",
48371
+ "in": "query",
48372
+ "name": "market",
48373
+ "type": "string"
48374
+ },
48375
+ {
48376
+ "description": "Count only Superhost listings",
48377
+ "in": "query",
48378
+ "name": "superhost",
48379
+ "type": "boolean"
48380
+ },
48381
+ {
48382
+ "description": "Minimum listing rating, from 0 through 5",
48383
+ "in": "query",
48384
+ "name": "min_rating",
48385
+ "type": "number"
48386
+ },
48387
+ {
48388
+ "description": "Minimum listing review count, 0 or greater",
48389
+ "in": "query",
48390
+ "name": "min_review_count",
48391
+ "type": "integer"
48392
+ },
48393
+ {
48394
+ "description": "Freshness filter, an ISO-8601 date (YYYY-MM-DD)",
48395
+ "in": "query",
48396
+ "name": "active_since",
48397
+ "type": "string"
48398
+ },
48399
+ {
48400
+ "description": "Minimum listings per bucket; raises the small-cell suppression floor",
48401
+ "in": "query",
48402
+ "name": "min_listings",
48403
+ "type": "integer"
48404
+ }
48405
+ ],
48406
+ "produces": [
48407
+ "application/json"
48408
+ ],
48409
+ "responses": {
48410
+ "200": {
48411
+ "description": "OK",
48412
+ "schema": {
48413
+ "$ref": "#/definitions/datasets.airbnbMarketsFacetResponseDoc"
48414
+ }
48415
+ },
48416
+ "400": {
48417
+ "description": "Bad Request",
48418
+ "schema": {
48419
+ "$ref": "#/definitions/app.Response"
48420
+ }
48421
+ },
48422
+ "429": {
48423
+ "description": "Too Many Requests",
48424
+ "schema": {
48425
+ "$ref": "#/definitions/app.Response"
48426
+ }
48427
+ },
48428
+ "500": {
48429
+ "description": "Internal Server Error",
48430
+ "schema": {
48431
+ "$ref": "#/definitions/app.Response"
48432
+ }
48433
+ }
48434
+ },
48435
+ "security": [
48436
+ {
48437
+ "ApiKeyAuth": []
48438
+ }
48439
+ ],
48440
+ "summary": "Facet the Airbnb markets dataset",
48441
+ "tags": [
48442
+ "Datasets"
48443
+ ]
48444
+ }
48445
+ },
48446
+ "/datasets/airbnb-markets/items/{country}": {
48447
+ "get": {
48448
+ "consumes": [
48449
+ "application/json"
48450
+ ],
48451
+ "description": "Returns one country's full aggregate Airbnb market profile from dataset id enum value `airbnb-markets` — headline supply, Superhost share, ratings, its top metros, bounding box and per-currency nightly-price percentiles. Aggregate-only. Returns 404 for a country below the suppression floor.",
48452
+ "operationId": "datasets-airbnb-markets-item",
48453
+ "parameters": [
48454
+ {
48455
+ "description": "ISO-3166-1 alpha-2 country code, e.g. FR",
48456
+ "in": "path",
48457
+ "name": "country",
48458
+ "required": true,
48459
+ "type": "string"
48460
+ }
48461
+ ],
48462
+ "produces": [
48463
+ "application/json"
48464
+ ],
48465
+ "responses": {
48466
+ "200": {
48467
+ "description": "OK",
48468
+ "schema": {
48469
+ "$ref": "#/definitions/datasets.airbnbMarketResponseDoc"
48470
+ }
48471
+ },
48472
+ "400": {
48473
+ "description": "Bad Request",
48474
+ "schema": {
48475
+ "$ref": "#/definitions/app.Response"
48476
+ }
48477
+ },
48478
+ "404": {
48479
+ "description": "Not Found",
48480
+ "schema": {
48481
+ "$ref": "#/definitions/app.Response"
48482
+ }
48483
+ },
48484
+ "429": {
48485
+ "description": "Too Many Requests",
48486
+ "schema": {
48487
+ "$ref": "#/definitions/app.Response"
48488
+ }
48489
+ },
48490
+ "500": {
48491
+ "description": "Internal Server Error",
48492
+ "schema": {
48493
+ "$ref": "#/definitions/app.Response"
48494
+ }
48495
+ }
48496
+ },
48497
+ "security": [
48498
+ {
48499
+ "ApiKeyAuth": []
48500
+ }
48501
+ ],
48502
+ "summary": "Get an Airbnb market from the dataset",
48503
+ "tags": [
48504
+ "Datasets"
48505
+ ]
48506
+ }
48507
+ },
48508
+ "/datasets/airbnb-markets/nearby": {
48509
+ "get": {
48510
+ "consumes": [
48511
+ "application/json"
48512
+ ],
48513
+ "description": "Returns an aggregate geohash-grid density map of Airbnb listings within a radius of a coordinate, from dataset id enum value `airbnb-markets`. Each cell reports a centroid, listing count and Superhost share; thin cells are suppressed. Aggregate-only.",
48514
+ "operationId": "datasets-airbnb-markets-nearby",
48515
+ "parameters": [
48516
+ {
48517
+ "description": "Center latitude, from -90 through 90",
48518
+ "in": "query",
48519
+ "name": "lat",
48520
+ "required": true,
48521
+ "type": "number"
48522
+ },
48523
+ {
48524
+ "description": "Center longitude, from -180 through 180",
48525
+ "in": "query",
48526
+ "name": "lon",
48527
+ "required": true,
48528
+ "type": "number"
48529
+ },
48530
+ {
48531
+ "description": "Search radius in meters, from 1 through 50000",
48532
+ "in": "query",
48533
+ "name": "radius_m",
48534
+ "required": true,
48535
+ "type": "integer"
48536
+ },
48537
+ {
48538
+ "description": "Geohash precision, from 1 through 12; defaults to a value derived from the radius",
48539
+ "in": "query",
48540
+ "name": "precision",
48541
+ "type": "integer"
48542
+ },
48543
+ {
48544
+ "description": "Minimum listings per cell; raises the small-cell suppression floor",
48545
+ "in": "query",
48546
+ "name": "min_listings",
48547
+ "type": "integer"
48548
+ },
48549
+ {
48550
+ "description": "Exact ISO-3166-1 alpha-2 country filter, e.g. US",
48551
+ "in": "query",
48552
+ "name": "country",
48553
+ "type": "string"
48554
+ },
48555
+ {
48556
+ "description": "Count only Superhost listings",
48557
+ "in": "query",
48558
+ "name": "superhost",
48559
+ "type": "boolean"
48560
+ },
48561
+ {
48562
+ "description": "Minimum listing rating, from 0 through 5",
48563
+ "in": "query",
48564
+ "name": "min_rating",
48565
+ "type": "number"
48566
+ },
48567
+ {
48568
+ "description": "Freshness filter, an ISO-8601 date (YYYY-MM-DD)",
48569
+ "in": "query",
48570
+ "name": "active_since",
48571
+ "type": "string"
48572
+ }
48573
+ ],
48574
+ "produces": [
48575
+ "application/json"
48576
+ ],
48577
+ "responses": {
48578
+ "200": {
48579
+ "description": "OK",
48580
+ "schema": {
48581
+ "$ref": "#/definitions/datasets.airbnbMarketsNearbyResponseDoc"
48582
+ }
48583
+ },
48584
+ "400": {
48585
+ "description": "Bad Request",
48586
+ "schema": {
48587
+ "$ref": "#/definitions/app.Response"
48588
+ }
48589
+ },
48590
+ "429": {
48591
+ "description": "Too Many Requests",
48592
+ "schema": {
48593
+ "$ref": "#/definitions/app.Response"
48594
+ }
48595
+ },
48596
+ "500": {
48597
+ "description": "Internal Server Error",
48598
+ "schema": {
48599
+ "$ref": "#/definitions/app.Response"
48600
+ }
48601
+ }
48602
+ },
48603
+ "security": [
48604
+ {
48605
+ "ApiKeyAuth": []
48606
+ }
48607
+ ],
48608
+ "summary": "Airbnb market density near a coordinate",
48609
+ "tags": [
48610
+ "Datasets"
48611
+ ]
48612
+ }
48613
+ },
48614
+ "/datasets/airbnb-markets/search": {
48615
+ "get": {
48616
+ "consumes": [
48617
+ "application/json"
48618
+ ],
48619
+ "description": "Returns aggregate Airbnb short-term-rental market rollups from the dataset id enum value `airbnb-markets`. Aggregate-only: each row is a market cell (a country or a metro), never an individual listing. Thin cells are suppressed. group_by enum: `country`, `market`. Sort enum: `listings_desc`, `superhost_pct_desc`, `rating_desc`, `key_asc`.",
48620
+ "operationId": "datasets-airbnb-markets-search",
48621
+ "parameters": [
48622
+ {
48623
+ "description": "Aggregate cell dimension enum: country, market. Defaults to country",
48624
+ "in": "query",
48625
+ "name": "group_by",
48626
+ "type": "string"
48627
+ },
48628
+ {
48629
+ "description": "Exact ISO-3166-1 alpha-2 country filter, e.g. FR",
48630
+ "in": "query",
48631
+ "name": "country",
48632
+ "type": "string"
48633
+ },
48634
+ {
48635
+ "description": "Exact metro-market filter, e.g. Paris, max 128 characters",
48636
+ "in": "query",
48637
+ "name": "market",
48638
+ "type": "string"
48639
+ },
48640
+ {
48641
+ "description": "Count only Superhost listings",
48642
+ "in": "query",
48643
+ "name": "superhost",
48644
+ "type": "boolean"
48645
+ },
48646
+ {
48647
+ "description": "Minimum listing rating, from 0 through 5",
48648
+ "in": "query",
48649
+ "name": "min_rating",
48650
+ "type": "number"
48651
+ },
48652
+ {
48653
+ "description": "Minimum listing review count, 0 or greater",
48654
+ "in": "query",
48655
+ "name": "min_review_count",
48656
+ "type": "integer"
48657
+ },
48658
+ {
48659
+ "description": "Freshness filter, an ISO-8601 date (YYYY-MM-DD); only listings last seen on or after it are counted",
48660
+ "in": "query",
48661
+ "name": "active_since",
48662
+ "type": "string"
48663
+ },
48664
+ {
48665
+ "description": "Minimum listings per cell; raises the small-cell suppression floor (never lowered below the built-in minimum)",
48666
+ "in": "query",
48667
+ "name": "min_listings",
48668
+ "type": "integer"
48669
+ },
48670
+ {
48671
+ "description": "Sort enum: listings_desc, superhost_pct_desc, rating_desc, key_asc",
48672
+ "in": "query",
48673
+ "name": "sort",
48674
+ "type": "string"
48675
+ },
48676
+ {
48677
+ "description": "Page number, defaults to 1",
48678
+ "in": "query",
48679
+ "name": "page",
48680
+ "type": "integer"
48681
+ },
48682
+ {
48683
+ "description": "Page size, defaults to 20 and maxes at 100; page * page_size must be <= 10000",
48684
+ "in": "query",
48685
+ "name": "page_size",
48686
+ "type": "integer"
48687
+ }
48688
+ ],
48689
+ "produces": [
48690
+ "application/json"
48691
+ ],
48692
+ "responses": {
48693
+ "200": {
48694
+ "description": "OK",
48695
+ "schema": {
48696
+ "$ref": "#/definitions/datasets.airbnbMarketsSearchResponseDoc"
48697
+ }
48698
+ },
48699
+ "400": {
48700
+ "description": "Bad Request",
48701
+ "schema": {
48702
+ "$ref": "#/definitions/app.Response"
48703
+ }
48704
+ },
48705
+ "429": {
48706
+ "description": "Too Many Requests",
48707
+ "schema": {
48708
+ "$ref": "#/definitions/app.Response"
48709
+ }
48710
+ },
48711
+ "500": {
48712
+ "description": "Internal Server Error",
48713
+ "schema": {
48714
+ "$ref": "#/definitions/app.Response"
48715
+ }
48716
+ }
48717
+ },
48718
+ "security": [
48719
+ {
48720
+ "ApiKeyAuth": []
48721
+ }
48722
+ ],
48723
+ "summary": "Search the Airbnb markets dataset",
48724
+ "tags": [
48725
+ "Datasets"
48726
+ ]
48727
+ }
48728
+ },
48062
48729
  "/datasets/apps-charts/search": {
48063
48730
  "get": {
48064
48731
  "consumes": [
data/sig/crawlora.rbs CHANGED
@@ -137,6 +137,10 @@ module Crawlora
137
137
  class DatasetsGroup
138
138
  def initialize: (Client, Hash[String, String]) -> void
139
139
  def list: (?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
140
+ def airbnb_markets_facets: (?facet: String, ?group_by: String, ?country: String, ?market: String, ?superhost: bool, ?min_rating: Float, ?min_review_count: Integer, ?active_since: String, ?min_listings: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
141
+ def airbnb_markets_item: (?country: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
142
+ def airbnb_markets_nearby: (?lat: Float, ?lon: Float, ?radius_m: Integer, ?precision: Integer, ?min_listings: Integer, ?country: String, ?superhost: bool, ?min_rating: Float, ?active_since: String, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
143
+ def airbnb_markets_search: (?group_by: String, ?country: String, ?market: String, ?superhost: bool, ?min_rating: Float, ?min_review_count: Integer, ?active_since: String, ?min_listings: Integer, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
140
144
  def apps_charts_search: (?q: String, ?store: String, ?chart_type: String, ?collection: String, ?category: String, ?country: String, ?app_id: String, ?date: String, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
141
145
  def apps_reviews_search: (?q: String, ?store: String, ?app_id: String, ?country: String, ?min_score: Integer, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
142
146
  def apps_search: (?q: String, ?store: String, ?category: String, ?country: String, ?developer: String, ?free: bool, ?min_rating: Float, ?min_reviews: Integer, ?sort: String, ?page: Integer, ?page_size: Integer, ?_response_type: ("auto" | "json" | "text" | "stream"), ?_timeout: Float, ?_headers: Hash[String, String], **untyped) -> untyped
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crawlora
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0.pre.sdk.1
4
+ version: 1.10.0.pre.sdk.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Crawlora