# Getmyboat Scraper \[$1/1K💰] | Boat Prices | Owners (`ahmed_jasarevic/getmyboat-scraper`) Actor

Scrape Getmyboat listings by destination or keyword: hourly and daily prices, vessel specs, owner details, availability and reviews. Export to CSV, JSON or API for charter market research.

- **URL**: https://apify.com/ahmed_jasarevic/getmyboat-scraper.md
- **Developed by:** [Ahmed Jasarevic](https://apify.com/ahmed_jasarevic) (community)
- **Features:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.90 / 1,000 listing rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Getmyboat Scraper

Scrape Getmyboat boat rentals by destination or keyword — hourly, half-day and daily prices, vessel specs, owner details, availability signals and guest reviews — and export the charter market as structured data.

### Price Boat Rentals And Research Charter Markets

- Benchmark charter prices by city, boat type and season
- Map fleet supply: manufacturers, models, lengths and capacities
- Compare owners and super owners by bookings and rating
- Track availability and demand signals before peak season
- Build a boat rental database for a marketplace, broker or travel app

### How It Works

![How the Getmyboat Scraper turns a destination into boat rental rows with prices, vessel specs and owner details.](https://api.apify.com/v2/key-value-stores/oeuA0kLOyhbRM4fzt/records/how-it-works-getmyboat-scraper.webp)

The Actor collects publicly available Getmyboat listing data and normalizes it into one schema. Provide a destination, category, keyword or listing URL; it reads the published search and listing pages, then writes one row per boat.

- A search page holds up to 50 listings.
- `includeReviews` adds the most recent guest reviews.
- `crawlAllDestinations` expands coverage from the published destination index.

Prices are in the listing's published currency.

### Scrape Getmyboat Listings By Destination Or Keyword

- `destinations` accepts a destination slug (`Miami--FL--United-States`), a category plus destination path (`jet-ski-rental/Miami--FL--United-States`) or a full Getmyboat URL.
- `searchQuery` runs a free-text search across all listings (`catamaran`, `sunset cruise`, `jet ski`).
- `categorySlugs` narrows every destination to categories such as `yacht-rentals`, `pontoon-boat-rentals`, `sailboat-rental`, `jet-ski-rental`, `catamaran-rental`, `fishing-charters`, `houseboat-rentals` and `tours`.
- `crawlAllDestinations` uses the published destination index instead of the input list, bounded by `maxDestinations` (default 25, maximum 500).
- `maxListings` caps dataset rows (default 200, maximum 20,000) and `maxPagesPerDestination` caps search depth (default 5 pages = 250 listings per destination/category).

### Boat Rental Prices, Vessel Specs And Owner Details

Each row combines the search card with the full listing detail:

- **Prices** — hourly, half-day, daily and nightly tiers plus the captain hourly cost, deposit and currency
- **Vessel** — boat type, manufacturer, model, year, length, guest capacity and amenities
- **Owner** — display name, super-owner status, booking count and profile signals
- **Location** — city, state, country and departure coordinates
- **Availability** — calendar seasons and booking-motivator flags for upcoming dates
- **Reviews** — the most recent guest reviews when `includeReviews` is on

### Charter Market Research And Fleet Benchmarking

- **Rate cards** — compare the same vessel class across destinations before setting your own price
- **Supply mapping** — count listings by manufacturer, length band and capacity per city
- **Owner intelligence** — identify high-volume super owners and their fleets
- **Seasonality** — re-run monthly and diff availability flags and prices
- **Marketplace seeding** — import normalized listings into a booking or travel product

### Input

| Field | Type | Required | Default | Notes |
| --- | --- | --- | --- | --- |
| `destinations` | array of strings | No | — | Destination slugs, category + destination paths or full URLs. |
| `searchQuery` | string | No | — | Free-text search across all listings. Leave empty to browse destinations. |
| `categorySlugs` | array of strings | No | — | Category filters applied to every destination, e.g. `yacht-rentals`. |
| `crawlAllDestinations` | boolean | No | `false` | Use the published destination index. |
| `maxDestinations` | integer | No | `25` | Destinations used in all-destinations mode. Minimum 1, maximum 500. |
| `maxListings` | integer | No | `200` | Hard cap on dataset rows. Minimum 1, maximum 20,000. |
| `maxPagesPerDestination` | integer | No | `5` | Search pages per destination/category, 50 listings per page. Maximum 100. |
| `includeReviews` | boolean | No | `false` | Attach the most recent guest reviews to each listing. |
| `proxy` | object | No | — | Standard Apify proxy configuration. Off by default. |

### Output

One row per boat listing.

| Field | Description |
| --- | --- |
| `id`, `title`, `url` | Listing identity and canonical URL. |
| `boatType`, `manufacturer`, `model`, `year`, `lengthFt` | Vessel classification and specs. |
| `guestCapacity`, `boatTypeRaw`, `categorySlug` | Capacity and the raw category labels. |
| `priceHourly`, `priceHalfDay`, `priceDaily`, `priceNightly`, `priceFrom`, `currency` | Price ladder, including hourly tiers and minimum duration. |
| `captainOption`, `captained`, `captainHourlyCost`, `bareboat`, `addOns` | Charter terms, deposit, fuel and gratuity flags. |
| `city`, `state`, `country`, `lat`, `lng`, `homePort`, `departureAddress` | Location and departure coordinates. |
| `owner.name`, `owner.isSuperOwner`, `owner.totalSuccessfulBookings` | Owner details from the listing. |
| `rating`, `reviewCount`, `ratingBreakdown`, `totalSuccessfulBookings` | Reputation and booking signals. |
| `availability` | Next available date, Instabook flags, departure window and demand-signal dates. |
| `amenities`, `photos`, `coverPhoto`, `description`, `cancellation` | Tags, media, description and cancellation policy. |
| `reviews` | Recent guest reviews when `includeReviews` is on. |
| `sourceDestination`, `sourceCategory`, `scrapedAt`, `source` | Run metadata. |

### Example Input

```json
{
  "destinations": ["Miami--FL--United-States"],
  "categorySlugs": ["yacht-rentals"],
  "maxListings": 100,
  "maxPagesPerDestination": 3,
  "includeReviews": true
}
```

### Example Output

```json
{
  "id": "ZK8WWxEY",
  "title": "26' Sea Ray Sundeck",
  "url": "https://www.getmyboat.com/boat-rental/Miami--FL--United-States/ZK8WWxEY/",
  "boatType": "powerboat",
  "manufacturer": "Sea Ray",
  "model": "Sundeck 240",
  "year": 2008,
  "lengthFt": 26,
  "guestCapacity": 11,
  "priceHourly": 89,
  "priceDaily": null,
  "currency": "USD",
  "captainOption": "Captain provided in price",
  "captainHourlyCost": 40,
  "addOns": {
    "deposit": 300,
    "fuelIncluded": true
  },
  "city": "Miami",
  "state": "FL",
  "country": "United States",
  "lat": 25.7617,
  "lng": -80.1918,
  "owner": {
    "name": "Frank A.",
    "isSuperOwner": true,
    "totalSuccessfulBookings": 10114
  },
  "totalSuccessfulBookings": 10114,
  "rating": 4.96,
  "reviewCount": 237,
  "availability": {
    "nextAvailableDate": "2026-10-25",
    "instabookEnabled": true,
    "demandSignalDateCount": 19
  },
  "scrapedAt": "2026-10-23T08:20:00.000Z",
  "source": "getmyboat"
}
```

### Schedule Boat Rental Price Monitoring

- Read datasets through the **Apify API** or export **JSON, CSV, Excel or HTML**
- Connect **Zapier, Make or Google Sheets** through Apify integrations
- Set a **webhook** to notify a pricing service when a run finishes
- Schedule weekly runs per destination in low season and daily runs before peak season; diff prices and availability to spot movement

Keep `maxPagesPerDestination` low for a price snapshot and raise it only when you need the long tail of a destination.

### Related Actors

- [GetMyBoat Scraper](https://apify.com/parseforge/getmyboat-scraper) — an alternative Getmyboat scraper with optional detail pages
- [SamBoat Scraper](https://apify.com/dadhalfdev/samboat-scraper) — boat rentals from SamBoat for cross-market comparison
- [Click\&Boat Scraper](https://apify.com/dadhalfdev/clickandboat-scraper) — another charter marketplace for European supply
- [Borrow A Boat Scraper](https://apify.com/dadhalfdev/borrow-a-boat-scraper) — UK and Mediterranean charter listings
- [YATCO Yacht Listings Scraper](https://apify.com/parseforge/yatco-scraper) — luxury yacht charter and brokerage listings

### FAQ

#### Does Getmyboat have a public API?

Getmyboat integrates with partners such as FareHarbor, Dwolla and Currencycloud, but it does not publish a self-serve developer API for reading listings. This Actor collects the public listing data that the website shows.

#### Why use this Actor instead of scraping Getmyboat manually?

The search page only renders cards; the full price ladder, captain cost, deposit, owner bookings and calendar flags live on each listing's detail page. The Actor follows every listing, normalizes the price tiers and paces runs to keep wide scans reliable.

#### What are alternatives to this Actor?

Other Getmyboat Actors on Apify scrape the same marketplace with different field depth, and SamBoat, Click\&Boat and Borrow A Boat scrapers cover European charter supply. For luxury yachts, YATCO is a separate source.

#### How many listings can I get per destination?

Each search page holds up to 50 listings and `maxPagesPerDestination` defaults to 5, so one destination/category yields up to 250 listings before `maxListings` caps the run. All-destinations mode can walk thousands of destinations.

#### Are reviews included by default?

No. `includeReviews` defaults to `false` because reviews add data volume. Turn it on when reputation matters; the Actor attaches the most recent guest reviews shown on the listing page.

#### Which currency are prices in?

Prices are returned in the currency published by Getmyboat for that listing, typically `USD` for US destinations, with the `currency` field on every row.

### For AI Agents & LLM Apps

Returns one row per Getmyboat listing with prices, vessel specs, owner details, coordinates and optional reviews.

Minimal working input:

```json
{ "destinations": ["Miami--FL--United-States"], "maxListings": 20 }
```

Keyword search across all destinations:

```json
{ "searchQuery": "catamaran", "maxListings": 20, "includeReviews": true }
```

Output fields: `id`, `title`, `url`, `boatType`, `boatTypeRaw`, `categorySlug`, `manufacturer`, `model`, `year`, `lengthFt`, `guestCapacity`, `priceHourly`, `priceHalfDay`, `priceDaily`, `priceNightly`, `priceFrom`, `currency`, `captainOption`, `captained`, `captainHourlyCost`, `bareboat`, `addOns`, `city`, `state`, `country`, `lat`, `lng`, `homePort`, `departureAddress`, `owner`, `totalSuccessfulBookings`, `rating`, `reviewCount`, `ratingBreakdown`, `availability`, `amenities`, `photos`, `coverPhoto`, `description`, `cancellation`, `reviews`, `sourceDestination`, `sourceCategory`, `scrapedAt`, `source`.

Behaviors an agent should know:

- `maxListings` is a hard row cap; `maxPagesPerDestination` limits how deep each destination is paged (50 rows per page).
- `crawlAllDestinations: true` ignores `destinations` and uses the published destination index, bounded by `maxDestinations`.
- `includeReviews` is off by default and adds the recent reviews array.
- The Actor paces runs to keep wide scans reliable, so large runs take longer than the row count suggests.
- `searchQuery` and `destinations` can be combined, but results are whatever the source returns for that combination.

Billing: pay-per-event at **$0.001 per listing** ($1 per 1,000 rows).

### Legal & Compliance Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by or sponsored by Getmyboat. It collects only publicly visible listing pages; it does not log in, bypass access controls or solve CAPTCHAs.

Listings can include owner names and review text. Users are responsible for complying with Getmyboat's Terms of Service and applicable data-protection law, including GDPR and CCPA where relevant, and for using the data only for lawful market research or with the rights required for republication.

### SEO Keywords

getmyboat scraper, getmyboat api, boat rental prices, yacht charter data, boat rental listings, charter market research, getmyboat miami, boat rental database, catamaran rental prices, boat owner data, boat availability data, marine market research, boat rental market, jet ski rental prices, yacht charter scraper, samboat scraper, clickandboat scraper, boat rental api

# Actor input Schema

## `destinations` (type: `array`):

Destinations to scrape. Accepts a Getmyboat destination slug ("Miami--FL--United-States"), a category + destination path ("jet-ski-rental/Miami--FL--United-States"), or a full Getmyboat URL ("https://www.getmyboat.com/boat-rental/Miami--FL--United-States/"). You can find slugs on getmyboat.com — they look like City--State--Country.

## `searchQuery` (type: `string`):

Optional keyword search across all Getmyboat listings (e.g. "catamaran", "sunset cruise", "jet ski"). Leave empty to browse destinations instead.

## `categorySlugs` (type: `array`):

Optional Getmyboat category slugs to narrow results, e.g. yacht-rentals, pontoon-boat-rentals, sailboat-rental, jet-ski-rental, catamaran-rental, fishing-charters, houseboat-rentals, tours. Each is applied to every destination listed above.

## `crawlAllDestinations` (type: `boolean`):

When enabled, destinations are read from Getmyboat's public sitemap (thousands of cities worldwide) instead of the Destinations field. Combined with maxDestinations to keep runs bounded.

## `maxDestinations` (type: `integer`):

Only used when 'Crawl destinations from Getmyboat sitemap' is enabled. Caps how many destinations are taken from the sitemap.

## `maxListings` (type: `integer`):

Hard cap on the number of boat listings written to the dataset. The actor stops enqueuing new listings once this is reached.

## `maxPagesPerDestination` (type: `integer`):

Each search page holds up to 50 listings. Raise this to go deeper into a destination.

## `includeReviews` (type: `boolean`):

Attach the most recent guest reviews (text, rating, date) returned by the listing endpoint.

## `proxy` (type: `object`):

Select proxies to be used by your crawler.

## Actor input object example

```json
{
  "destinations": [
    "Miami--FL--United-States"
  ],
  "crawlAllDestinations": false,
  "maxDestinations": 25,
  "maxListings": 200,
  "maxPagesPerDestination": 5,
  "includeReviews": false,
  "proxy": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "destinations": [
        "Miami--FL--United-States"
    ],
    "proxy": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("ahmed_jasarevic/getmyboat-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "destinations": ["Miami--FL--United-States"],
    "proxy": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("ahmed_jasarevic/getmyboat-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "destinations": [
    "Miami--FL--United-States"
  ],
  "proxy": {
    "useApifyProxy": false
  }
}' |
apify call ahmed_jasarevic/getmyboat-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,ahmed_jasarevic/getmyboat-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/TgynbMHmqMfYcCKj8/builds/CKTW6e1h3FGta4y2E/openapi.json
