{
  "data": {
    "id": "QvsOwV3JL2stfSEFz",
    "userId": "ngn8vRESTkseyWE6p",
    "name": "airbnb-scraper",
    "username": "memo23",
    "description": "Airbnb scraper — search by location or URL, or pull any room or host profile. Flat per-listing rows: price, 40+ fields, amenities, host, GPS, photos, reviews, per-day availability calendar plus occupancy & revenue estimates. 14 languages, 20 currencies. Pure HTTP, no browser.",
    "isPublic": true,
    "createdAt": "2025-09-06T18:55:24.391Z",
    "modifiedAt": "2026-10-22T06:15:53.198Z",
    "taggedBuilds": {
      "latest": {
        "buildId": "MPrCr90y163Q2M10N",
        "finishedAt": "2026-10-22T06:15:53.198Z",
        "buildNumberInt": 138,
        "buildNumber": "0.0.138"
      }
    },
    "stats": {
      "totalBuilds": 138,
      "totalRuns": 14400,
      "totalUsers": 204,
      "totalUsers7Days": 9,
      "totalUsers30Days": 17,
      "totalUsers90Days": 42,
      "lastRunStartedAt": "2026-10-25T07:47:02.155Z",
      "publicActorRunStats30Days": {
        "ABORTED": 10,
        "FAILED": 1,
        "SUCCEEDED": 3082,
        "TIMED-OUT": 5,
        "TOTAL": 3098
      },
      "actorReviewCount": 13,
      "actorReviewRating": 3.5283146378056593,
      "bookmarkCount": 3
    },
    "versions": [
      {
        "versionNumber": "0.0",
        "sourceType": "SOURCE_FILES",
        "buildTag": "latest"
      }
    ],
    "defaultRunOptions": {
      "build": "latest",
      "timeoutSecs": 3600,
      "memoryMbytes": 512,
      "maxItems": null,
      "maxTotalChargeUsd": null
    },
    "exampleRunInput": {
      "body": "{ \"helloWorld\": 123 }",
      "contentType": "application/json; charset=utf-8"
    },
    "categories": [
      "TRAVEL",
      "AUTOMATION",
      "LEAD_GENERATION"
    ],
    "isDeprecated": false,
    "title": "Airbnb Scraper — Prices, Reviews, Calendar & Revenue",
    "pictureUrl": "https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/ngn8vRESTkseyWE6p-actor-QvsOwV3JL2stfSEFz-cMR20IrCdT-airbnb.png",
    "seoTitle": "Airbnb Scraper — Prices, Reviews & Availability Calendar",
    "seoDescription": "Scrape Airbnb listings by location or URL. Get prices, 40+ fields, host data, GPS, photos, reviews, availability calendar and revenue estimates. No browser needed.",
    "pricingInfos": [
      {
        "pricePerUnitUsd": 0.001,
        "unitName": "result",
        "pricingModel": "PRICE_PER_DATASET_ITEM",
        "isPriceChangeNotificationSuppressed": false,
        "createdAt": "2025-09-19T09:34:32.390Z",
        "startedAt": "2025-09-19T09:34:32.390Z",
        "apifyMarginPercentage": 0.2
      },
      {
        "pricePerUnitUsd": 0.00085,
        "unitName": "result",
        "pricingModel": "PRICE_PER_DATASET_ITEM",
        "isPriceChangeNotificationSuppressed": false,
        "startedAt": "2025-10-23T06:55:33.109Z",
        "createdAt": "2025-10-23T06:55:33.711Z",
        "apifyMarginPercentage": 0.2
      },
      {
        "pricingModel": "PAY_PER_EVENT",
        "createdAt": "2025-11-19T07:20:47.325Z",
        "startedAt": "2025-11-19T07:20:47.325Z",
        "apifyMarginPercentage": 0.2,
        "isPriceChangeNotificationSuppressed": true,
        "reasonForChange": "Migration from Pay Per Result to Pay Per Event with apify-default-dataset-item event",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "apify-default-dataset-item": {
              "eventTitle": "result",
              "eventDescription": "Single result in the default dataset.",
              "eventPriceUsd": 0.00085,
              "isPrimaryEvent": true
            }
          }
        },
        "forceContainsSignificantPriceChange": false
      },
      {
        "minimalMaxTotalChargeUsd": null,
        "pricingModel": "PAY_PER_EVENT",
        "isPriceChangeNotificationSuppressed": false,
        "reasonForChange": "To smoothly transition to PPE and the maintenance of the Actor, we are adding an Actor start charge, which will charge you a very nominal price when you start a run. This helps us target fraud users.",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "apify-default-dataset-item": {
              "eventTitle": "result",
              "eventDescription": "Single result in the default dataset.",
              "eventPriceUsd": 0.00085,
              "isPrimaryEvent": true
            },
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "eventPriceUsd": 0.005
            }
          }
        },
        "startedAt": "2025-11-26T00:00:00.000Z",
        "createdAt": "2025-11-19T07:21:15.018Z",
        "apifyMarginPercentage": 0.2,
        "notifiedAboutFutureChangeAt": "2025-11-19T07:21:35.262Z"
      },
      {
        "minimalMaxTotalChargeUsd": null,
        "pricingModel": "PAY_PER_EVENT",
        "isPriceChangeNotificationSuppressed": false,
        "pricingPerEvent": {
          "actorChargeEvents": {
            "apify-default-dataset-item": {
              "eventTitle": "result",
              "eventDescription": "Single result in the default dataset.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.0008,
              "isPrimaryEvent": true
            },
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "isOneTimeEvent": true,
              "eventPriceUsd": 0.005
            }
          }
        },
        "startedAt": "2026-01-28T09:16:18.249Z",
        "createdAt": "2026-01-28T09:16:18.834Z",
        "apifyMarginPercentage": 0.2
      },
      {
        "minimalMaxTotalChargeUsd": null,
        "pricingModel": "PAY_PER_EVENT",
        "isPriceChangeNotificationSuppressed": true,
        "pricingPerEvent": {
          "actorChargeEvents": {
            "apify-default-dataset-item": {
              "eventTitle": "result",
              "eventDescription": "Single result in the default dataset.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.0008,
              "isPrimaryEvent": true
            },
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "isOneTimeEvent": true,
              "eventPriceUsd": 0.005
            },
            "additional-data": {
              "eventTitle": "Additional Data",
              "eventDescription": "Charged for additional data",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.001
            }
          }
        },
        "createdAt": "2026-07-21T13:33:39.741Z",
        "startedAt": "2026-07-21T13:33:39.741Z",
        "apifyMarginPercentage": 0.2
      },
      {
        "minimalMaxTotalChargeUsd": null,
        "pricingModel": "PAY_PER_EVENT",
        "isPriceChangeNotificationSuppressed": true,
        "pricingPerEvent": {
          "actorChargeEvents": {
            "apify-default-dataset-item": {
              "eventTitle": "result",
              "eventDescription": "Single result in the default dataset.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.0008,
              "isPrimaryEvent": true
            },
            "apify-actor-start": {
              "eventTitle": "Actor Start",
              "eventDescription": "Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).",
              "isOneTimeEvent": true,
              "eventPriceUsd": 0.005
            },
            "additional-data": {
              "eventTitle": "Additional Data",
              "eventDescription": "Charged for additional data",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.001
            },
            "contact-email": {
              "eventTitle": "Contact email found",
              "eventDescription": "One contact email discovered for a row and attached to it. Charged only when an address is actually found — lookups that find nothing are free. Requires the enrichEmails option.",
              "isOneTimeEvent": false,
              "eventPriceUsd": 0.05
            }
          }
        },
        "startedAt": "2026-11-03T05:54:15.504Z",
        "apifyMarginPercentage": 0.2,
        "createdAt": "2026-10-19T05:54:15.747Z"
      }
    ],
    "notice": "NONE",
    "isCritical": false,
    "isGeneric": false,
    "hasNoDataset": false,
    "isSourceCodeHidden": true,
    "standbyUrl": null,
    "actorPermissionLevel": "LIMITED_PERMISSIONS",
    "readmeSummary": "## Airbnb Scraper — Prices, Reviews, Availability Calendar & Revenue\n\nA scraper that extracts Airbnb listing data at scale into one flat, analysis-ready row per listing: prices and price breakdowns, per-night and total booking quotes, per-day availability calendars, occupancy and directional revenue estimates, guest/bedroom capacities, booking rules, structured amenities and house rules, deep host profiles (host status, response metrics, co-hosts), rating breakdowns and full review corpora (opt-in), geolocation and photos, plus optional market-level context (market ADR, occupancy, RevPAR, annual revenue and market scores) derived from an external market index. Technical capabilities include a pure-HTTP crawler using Airbnb’s mobile GraphQL endpoints (no browser or third-party CAPTCHA bypass), optional per-listing detail fetches or fast overview-only scans, price-band splitting and de-duplication to increase coverage beyond single-search caps, localization of language and currency, and opt-in arrays for reviews, availability calendar, occupancy/revenue estimates, and market enrichment. Outputs are ultra-flattened rows designed for spreadsheets, databases, and ML pipelines.\n\n## Use cases\n\n- Short-term rental investors: evaluate occupancy percentages, estimated revenue, nightly prices and minimum-stay constraints, and compare listings to their market averages.  \n- Revenue and pricing managers: extract per-day availability and nightly price history to benchmark and tune pricing strategies.  \n- Market researchers: analyze supply, amenity mix, host composition (e.g., superhost density), and price distribution across areas.  \n- Data and ML teams: obtain clean, flat rows plus review text corpora for modeling, NLP, and dashboards.  \n- Lead generation and outreach: collect host profile signals and listing metadata at scale for prospecting.",
    "deploymentKey": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCrEtraKsIzoqQ9VwwVuaATbniaM/a2ISs4A2gaTxMr3H56ecQ+wVhT5EEXUzW7fVHsbKtU94Ss9Vz1swKenMFP33qz/D8+PuhqNCqmRvDXgy43R46OQjyROIRvsH2iIpEJFWgcccsggjuF3zTGIlch/iAq77mK192VghM81OofVNonPQ3FZ68CHxRlZjhO/lRv92LDpcceIqwUm3VbybPkb6Qv3iuWambkimbvqtUWXp773Zd6LJzlb/2AbAb5iSJaHJldxulXFbMQb/0mKwXBCh9shCuvuKu7EyD1IlqwGkKvstbM7n+8FmQxor2fwWO4Fn0DMnDQvgGIBohBs0Z \n"
  }
}