RYC yacht charter deals

Live discounted yacht charters in 11 destinations: search, price checks, trip cost, routes.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
97%
Integridad del esquema
85%
Calidad de los nombres
93%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~9,432Tokens (definiciones de herramientas)
~5.9 KBTamaño de respuesta típico
Impacto significativo en la atención (7.37% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "deals": {
      "url": "https://www.rycrentals.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://www.rycrentals.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (15)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢list_destinations

All destinations with the number of discounted boats departing in the next three months, the biggest and median discount, the cheapest week, catamaran/monohull split and the destination page.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "as_of": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_unit": {
      "type": "string"
    },
    "destinations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "page": {
            "type": "string"
          },
          "indexed": {
            "type": "boolean"
          },
          "discounted_boats": {
            "type": "number"
          },
          "yacht_models": {
            "type": "number"
          },
          "max_discount_pct": {
            "type": "number"
          },
          "median_discount_pct": {
            "type": "number"
          },
          "cheapest_week_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "departure_months": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "by_type": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string"
                },
                "boats": {
                  "type": "number"
                },
                "max_discount_pct": {
                  "type": "number"
                },
                "cheapest_week_eur": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "page": {
                  "type": "string"
                }
              },
              "required": [
                "type",
                "boats",
                "max_discount_pct",
                "cheapest_week_eur",
                "page"
              ]
            }
          }
        },
        "required": [
          "slug",
          "name",
          "page",
          "indexed",
          "discounted_boats",
          "yacht_models",
          "max_discount_pct",
          "median_discount_pct",
          "cheapest_week_eur",
          "departure_months",
          "by_type"
        ]
      }
    }
  },
  "required": [
    "as_of",
    "price_unit",
    "destinations"
  ]
}
🟢search_deals(country, month, departure_from, departure_to, boat_type, ...)

Discounted boats (one row per boat and week) filtered by destination, departure month or date window, boat type, cabins, group size (berths), minimum discount and maximum whole-boat price. Sorted by discount, whole-boat price or price per berth. With any filter beyond destination/month/type/cabins every matching boat is considered, `matching` says how many there are and `next_offset` pages through them. Without a month or date window each boat appears once (its best week). Returns dates, whole-boat price, list price, discount, per-berth price, photo, source, when the price was checked and the boat page.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "croatia",
        "greece",
        "italy",
        "turkey",
        "spain",
        "montenegro",
        "seychelles",
        "france",
        "caribbean",
        "thailand",
        "canaries"
      ],
      "description": "Destination slug"
    },
    "month": {
      "type": "string",
      "pattern": "^\\d{4}-(0[1-9]|1[0-2])$",
      "description": "Departure month, YYYY-MM (the next three months are covered)"
    },
    "departure_from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Earliest departure date, YYYY-MM-DD (e.g. a flexible week: 2026-11-01 to 2026-11-15)"
    },
    "departure_to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Latest departure date, YYYY-MM-DD"
    },
    "boat_type": {
      "type": "string",
      "enum": [
        "catamaran",
        "monohull"
      ]
    },
    "cabins": {
      "type": "integer",
      "enum": [
        2,
        3,
        4,
        5,
        6
      ],
      "description": "Guest cabins; 6 means 6 or more"
    },
    "people": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "description": "People sleeping aboard: only boats with at least this many berths"
    },
    "min_discount_pct": {
      "type": "number",
      "minimum": 0,
      "maximum": 95,
      "description": "Only boats at least this much off the list price, %"
    },
    "max_price_eur": {
      "type": "number",
      "minimum": 0,
      "description": "Maximum whole-boat price for the week, EUR"
    },
    "sort": {
      "type": "string",
      "enum": [
        "discount",
        "price",
        "per_berth"
      ],
      "default": "discount",
      "description": "discount — biggest first; price — cheapest whole boat; per_berth — cheapest per berth (best for a full boat)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 10
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1000,
      "default": 0,
      "description": "Skip this many results: pass next_offset from the previous call"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "filter": {
      "type": "object",
      "properties": {},
      "required": []
    },
    "count": {
      "type": "integer"
    },
    "matching": {
      "type": "integer"
    },
    "more": {
      "type": "boolean"
    },
    "next_offset": {
      "type": [
        "integer",
        "null"
      ]
    },
    "price_unit": {
      "type": "string"
    },
    "deals": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": "string"
          },
          "base": {
            "type": [
              "string",
              "null"
            ]
          },
          "cabins": {
            "type": [
              "number",
              "null"
            ]
          },
          "berths": {
            "type": [
              "number",
              "null"
            ]
          },
          "departure": {
            "type": "string"
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": "number"
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "price_checked_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "model",
          "year",
          "boat_type",
          "country",
          "base",
          "cabins",
          "berths",
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "per_berth_eur",
          "source",
          "price_checked_at",
          "page"
        ]
      }
    }
  },
  "required": [
    "filter",
    "count",
    "more",
    "next_offset",
    "price_unit",
    "deals"
  ]
}
🟢get_boat(id, url)

Everything known about one discounted boat-week: dates, whole-boat price, list price, discount, per-berth price, price history, specs (length, beam, draft, heads, engine, tanks, sails, charter type), equipment, mandatory and optional extras with prices, photos and the boat's other discounted weeks. Pass the id from search_deals (the number at the end of its page URL) or the page URL itself.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "Boat-week id: the number at the end of the page URL, e.g. 1131 for /en/deals/turkey/1131"
    },
    "url": {
      "type": "string",
      "description": "Boat page URL from search_deals, e.g. https://www.rycrentals.com/en/deals/turkey/1131"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "page": {
      "type": [
        "string",
        "null"
      ]
    },
    "model": {
      "type": "string"
    },
    "year": {
      "type": [
        "number",
        "null"
      ]
    },
    "boat_type": {
      "type": [
        "string",
        "null"
      ]
    },
    "country": {
      "type": "string"
    },
    "country_slug": {
      "type": [
        "string",
        "null"
      ]
    },
    "base": {
      "type": [
        "string",
        "null"
      ]
    },
    "cabins": {
      "type": [
        "number",
        "null"
      ]
    },
    "cabins_total": {
      "type": [
        "number",
        "null"
      ]
    },
    "berths": {
      "type": [
        "number",
        "null"
      ]
    },
    "departure": {
      "type": [
        "string",
        "null"
      ]
    },
    "return": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_eur": {
      "type": [
        "number",
        "null"
      ]
    },
    "list_price_eur": {
      "type": [
        "number",
        "null"
      ]
    },
    "discount_pct": {
      "type": [
        "number",
        "null"
      ]
    },
    "per_berth_eur": {
      "type": [
        "number",
        "null"
      ]
    },
    "previous_price_eur": {
      "type": [
        "number",
        "null"
      ]
    },
    "price_cut_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "source": {
      "type": "string"
    },
    "price_checked_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "first_seen_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "specs": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "length_m": {
          "type": [
            "number",
            "null"
          ]
        },
        "beam_m": {
          "type": [
            "number",
            "null"
          ]
        },
        "draft_m": {
          "type": [
            "number",
            "null"
          ]
        },
        "heads": {
          "type": [
            "number",
            "null"
          ]
        },
        "engine": {
          "type": [
            "string",
            "null"
          ]
        },
        "charter_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "equipment": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "equipment"
      ]
    },
    "extras": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "unit": {
            "type": "string"
          },
          "mandatory": {
            "type": "boolean"
          }
        },
        "required": [
          "name",
          "price_eur",
          "unit",
          "mandatory"
        ]
      }
    },
    "mandatory_per_booking_eur": {
      "type": [
        "number",
        "null"
      ]
    },
    "photos": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "other_weeks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "departure": {
            "type": [
              "string",
              "null"
            ]
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "page"
        ]
      }
    },
    "booking": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "page",
    "model",
    "year",
    "boat_type",
    "country",
    "country_slug",
    "base",
    "cabins",
    "cabins_total",
    "berths",
    "departure",
    "return",
    "price_eur",
    "list_price_eur",
    "discount_pct",
    "per_berth_eur",
    "previous_price_eur",
    "price_cut_at",
    "source",
    "price_checked_at",
    "first_seen_at",
    "specs",
    "extras",
    "mandatory_per_booking_eur",
    "photos",
    "other_weeks",
    "booking"
  ]
}
🟢prices_by_month(country)

Price per berth per week (median, lower and upper quartile), median whole-boat week, share of boats 20%+ off and boats checked, by destination, month and boat type, from the agent's market scans.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "croatia",
        "greece",
        "italy",
        "turkey",
        "spain",
        "montenegro",
        "seychelles",
        "france",
        "caribbean",
        "thailand",
        "canaries"
      ],
      "description": "Destination slug; omit for all"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "unit": {
      "type": "string"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string"
          },
          "month": {
            "type": "string"
          },
          "boat_type": {
            "type": "string"
          },
          "median_per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "p25_per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "p75_per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "median_week_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "share_20pct_off": {
            "type": [
              "number",
              "null"
            ]
          },
          "boats_checked": {
            "type": [
              "number",
              "null"
            ]
          },
          "checked": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "country",
          "month",
          "boat_type",
          "median_per_berth_eur",
          "p25_per_berth_eur",
          "p75_per_berth_eur",
          "median_week_eur",
          "share_20pct_off",
          "boats_checked",
          "checked"
        ]
      }
    }
  },
  "required": [
    "unit",
    "rows"
  ]
}
🟢list_routes(country, lang)

One-week sailing routes that start and end at a charter base: title, destination, route label, number of days, total nautical miles, start port, overnight stops in order, a short description and the route page. Use get_route for the day-by-day plan.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "turkey",
        "greece",
        "croatia",
        "montenegro",
        "italy",
        "france",
        "spain",
        "canaries",
        "portugal",
        "seychelles",
        "thailand",
        "maldives",
        "caribbean"
      ],
      "description": "Destination slug; omit for all routes"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "de",
        "es"
      ],
      "default": "en",
      "description": "Language of titles, texts and stop names"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer"
    },
    "miles_unit": {
      "type": "string"
    },
    "routes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "country_name": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "route": {
            "type": "string"
          },
          "days": {
            "type": "integer"
          },
          "total_miles": {
            "type": "number"
          },
          "start": {
            "type": "string"
          },
          "overnight_stops": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "description": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "country",
          "country_name",
          "title",
          "route",
          "days",
          "total_miles",
          "start",
          "overnight_stops",
          "description",
          "url"
        ]
      }
    }
  },
  "required": [
    "count",
    "miles_unit",
    "routes"
  ]
}
🟢get_route(country, slug, url, lang)

Full one-week sailing route: description, day-by-day plan (leg, nautical miles, what to expect), each day's stops with latitude/longitude (decimal degrees, harbour or bay level), other marinas, town quays and mooring-buoy bays near each day's leg with coordinates, practical notes on wind, berths and formalities, total miles, the route page, up to five discounted boats departing from the route's start port and the page of all discounted boats in that destination. Pass country and slug from list_routes, or the route page URL.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "turkey",
        "greece",
        "croatia",
        "montenegro",
        "italy",
        "france",
        "spain",
        "canaries",
        "portugal",
        "seychelles",
        "thailand",
        "maldives",
        "caribbean"
      ],
      "description": "Destination slug, e.g. turkey"
    },
    "slug": {
      "type": "string",
      "enum": [
        "marmaris-week",
        "bozburun-week",
        "loryma-week",
        "gocek-week",
        "fethiye-kekova-week",
        "fethiye-bodrum-week",
        "gocek-bozburun-week",
        "gocek-marmaris-one-way",
        "oludeniz-marmaris-one-way",
        "saronic-week",
        "lefkada-week",
        "corfu-week",
        "dodecanese-rhodes-week",
        "dodecanese-patmos-week",
        "aegina-thessaloniki-one-way",
        "cyclades-10-days",
        "kea-kythnos-week",
        "lefkas-south-week",
        "milos-week",
        "thasos-week",
        "split-week",
        "pula-week",
        "dubrovnik-week",
        "kornati-week",
        "zadar-week",
        "trogir-week",
        "dalmatia-two-weeks",
        "krka-week",
        "zadar-kvarner-two-weeks",
        "boka-week",
        "budva-week",
        "bar-week",
        "maddalena-week",
        "corsica-week",
        "tuscany-corsica-week",
        "naples-week",
        "aeolian-week",
        "amalfi-week",
        "aeolian-portorosa-week",
        "aeolian-seven-islands-week",
        "capri-4-days",
        "cilento-week",
        "elba-corsica-two-weeks",
        "elba-giglio-week",
        "ponza-week",
        "venice-two-weeks",
        "riviera-week",
        "hyeres-week",
        "ajaccio-week",
        "palma-week",
        "costa-brava-week",
        "menorca-week",
        "alicante-week",
        "valencia-week",
        "balearics-two-weeks",
        "costa-brava-france-week",
        "mallorca-week",
        "tenerife-week",
        "lanzarote-week",
        "gran-canaria-week",
        "algarve-week",
        "azores-week",
        "lisbon-week",
        "la-digue-week",
        "silhouette-week",
        "praslin-week",
        "phang-nga-week",
        "phi-phi-week",
        "similan-week",
        "langkawi-one-way",
        "male-ari-week",
        "bvi-week",
        "grenadines-week",
        "antigua-week",
        "st-martin-week",
        "abaco-week",
        "cuba-cayo-largo-week",
        "cuba-cayos-week",
        "cuba-juventud-11-days",
        "guadeloupe-week",
        "st-martin-martinique-two-weeks",
        "st-martin-tortola-one-way"
      ],
      "description": "Route slug from list_routes, e.g. marmaris-week"
    },
    "url": {
      "type": "string",
      "description": "Route page URL, e.g. https://www.rycrentals.com/en/deals/turkey/marmaris-week"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "de",
        "es"
      ],
      "default": "en",
      "description": "Language of titles, texts and stop names"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "country_name": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "route": {
      "type": "string"
    },
    "days": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "day": {
            "type": "integer"
          },
          "leg": {
            "type": "string"
          },
          "miles": {
            "type": [
              "string",
              "null"
            ]
          },
          "text": {
            "type": "string"
          },
          "stops": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "kind": {
                  "type": "string"
                },
                "overnight": {
                  "type": "boolean"
                },
                "lat": {
                  "type": "number"
                },
                "lon": {
                  "type": "number"
                },
                "coordinates": {
                  "type": "string"
                }
              },
              "required": [
                "name",
                "kind",
                "overnight",
                "lat",
                "lon",
                "coordinates"
              ]
            }
          },
          "other_stops": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                },
                "lat": {
                  "type": "number"
                },
                "lon": {
                  "type": "number"
                },
                "coordinates": {
                  "type": "string"
                }
              },
              "required": [
                "name",
                "type",
                "lat",
                "lon",
                "coordinates"
              ]
            }
          }
        },
        "required": [
          "day",
          "leg",
          "miles",
          "text",
          "stops",
          "other_stops"
        ]
      }
    },
    "total_miles": {
      "type": "number"
    },
    "start": {
      "type": "string"
    },
    "overnight_stops": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "description": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "intro": {
      "type": "string"
    },
    "updated": {
      "type": "string"
    },
    "practical": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "coordinates_note": {
      "type": "string"
    },
    "boats_url": {
      "type": "string"
    },
    "boats_from_start": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": "string"
          },
          "base": {
            "type": [
              "string",
              "null"
            ]
          },
          "cabins": {
            "type": [
              "number",
              "null"
            ]
          },
          "berths": {
            "type": [
              "number",
              "null"
            ]
          },
          "departure": {
            "type": "string"
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": "number"
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "price_checked_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "model",
          "year",
          "boat_type",
          "country",
          "base",
          "cabins",
          "berths",
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "per_berth_eur",
          "source",
          "price_checked_at",
          "page"
        ]
      }
    },
    "boats_note": {
      "type": "string"
    }
  },
  "required": [
    "slug",
    "country",
    "country_name",
    "title",
    "route",
    "days",
    "total_miles",
    "start",
    "overnight_stops",
    "description",
    "url",
    "intro",
    "updated",
    "practical",
    "coordinates_note",
    "boats_url",
    "boats_from_start",
    "boats_note"
  ]
}
🟢request_availability(id, url, lang)

A link the person opens to ask an RYC manager to check and book one discounted boat-week. The link opens the boat page with the request form already open; the person signs in by email and presses Send — the assistant cannot send the request itself. The manager replies on the site's Messages page, by notification or email, within an hour from 10:00 to 20:00 Moscow time. Pass the id or page URL from search_deals or get_boat.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "Boat-week id: the number at the end of the page URL"
    },
    "url": {
      "type": "string",
      "description": "Boat page URL from search_deals or get_boat"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "de",
        "es"
      ],
      "default": "en",
      "description": "Site language for the link"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "boat": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "model": {
          "type": "string"
        },
        "price_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "discount_pct": {
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "id",
        "model"
      ]
    },
    "next_steps": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "url",
    "boat",
    "next_steps"
  ]
}
🟢create_deal_alert(country, month, boat_type, cabins, max_price_eur, ...)

A link to set up an alert on the site when nothing current fits the person's dates or budget. The answers given here are filled in; the site asks only what is missing. After the person signs in by email, the RYC agent searches charter portals and booking sites at once, repeats the search every week and sends only new discounted boats to the Messages page, by notification or email.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "croatia",
        "greece",
        "italy",
        "turkey",
        "spain",
        "montenegro",
        "seychelles",
        "france",
        "caribbean",
        "thailand",
        "canaries"
      ],
      "description": "Destination slug"
    },
    "month": {
      "type": "string",
      "pattern": "^\\d{4}-(0[1-9]|1[0-2])$",
      "description": "Departure month, YYYY-MM; this month or later"
    },
    "boat_type": {
      "type": "string",
      "enum": [
        "catamaran",
        "monohull"
      ]
    },
    "cabins": {
      "type": "integer",
      "enum": [
        2,
        3,
        4,
        5
      ],
      "description": "Guest cabins, exactly (2–5)"
    },
    "max_price_eur": {
      "type": "number",
      "minimum": 0,
      "description": "Budget for the whole boat per week, EUR; rounded up to the site's bands (2500, 5000, 8000, 10000; above the top band — any price)"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "de",
        "es"
      ],
      "default": "en",
      "description": "Site language for the link"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "filled": {
      "type": "object",
      "properties": {
        "country": {
          "type": [
            "string",
            "null"
          ]
        },
        "month": {
          "type": [
            "string",
            "null"
          ]
        },
        "boat_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "cabins": {
          "type": [
            "number",
            "null"
          ]
        },
        "budget_max_eur": {
          "type": [
            "number",
            "string",
            "null"
          ]
        }
      },
      "required": [
        "country",
        "month",
        "boat_type",
        "cabins",
        "budget_max_eur"
      ]
    },
    "still_to_answer": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "next_steps": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "url",
    "filled",
    "still_to_answer",
    "next_steps"
  ]
}
🟢is_good_deal(id, url)

Compares one boat-week's price with the market for the same destination, departure month and boat type (the agent's scans of hundreds of boats): verdict excellent / good / fair / expensive, percent above or below the median price per berth, the market quartiles, a recent price cut and cheaper weeks of the same boat. Use it before recommending a boat or when the person asks whether a price is good.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "Boat-week id: the number at the end of the page URL, e.g. 1131 for /en/deals/turkey/1131"
    },
    "url": {
      "type": "string",
      "description": "Boat page URL from search_deals, e.g. https://www.rycrentals.com/en/deals/turkey/1131"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "boat": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "model": {
          "type": "string"
        },
        "year": {
          "type": [
            "number",
            "null"
          ]
        },
        "boat_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "country": {
          "type": "string"
        },
        "base": {
          "type": [
            "string",
            "null"
          ]
        },
        "departure": {
          "type": [
            "string",
            "null"
          ]
        },
        "return": {
          "type": [
            "string",
            "null"
          ]
        },
        "price_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "list_price_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "discount_pct": {
          "type": [
            "number",
            "null"
          ]
        },
        "per_berth_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "cabins": {
          "type": [
            "number",
            "null"
          ]
        },
        "berths": {
          "type": [
            "number",
            "null"
          ]
        },
        "page": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "id",
        "model",
        "year",
        "boat_type",
        "country",
        "base",
        "departure",
        "return",
        "price_eur",
        "list_price_eur",
        "discount_pct",
        "per_berth_eur",
        "cabins",
        "berths",
        "page"
      ]
    },
    "verdict": {
      "type": "string",
      "enum": [
        "excellent",
        "good",
        "fair",
        "expensive",
        "no_market_data"
      ]
    },
    "summary": {
      "type": "string"
    },
    "vs_median_pct": {
      "type": [
        "number",
        "null"
      ]
    },
    "compared_on": {
      "type": [
        "string",
        "null"
      ],
      "enum": [
        "per_berth",
        "whole_boat",
        null
      ]
    },
    "market": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "month": {
          "type": "string"
        },
        "boat_type": {
          "type": "string"
        },
        "per_berth_eur": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "p25": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "p75": {
              "type": "number"
            }
          },
          "required": [
            "p25",
            "median",
            "p75"
          ]
        },
        "whole_boat_week_eur": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "p25": {
              "type": "number"
            },
            "median": {
              "type": "number"
            },
            "p75": {
              "type": "number"
            }
          },
          "required": [
            "p25",
            "median",
            "p75"
          ]
        },
        "share_20pct_off": {
          "type": [
            "number",
            "null"
          ]
        },
        "boats_checked": {
          "type": [
            "number",
            "null"
          ]
        },
        "checked": {
          "type": [
            "string",
            "null"
          ]
        },
        "median_understated": {
          "type": "boolean"
        }
      },
      "required": [
        "month",
        "boat_type",
        "per_berth_eur",
        "whole_boat_week_eur",
        "share_20pct_off",
        "boats_checked",
        "checked",
        "median_understated"
      ]
    },
    "price_drop": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "previous_price_eur": {
          "type": "number"
        },
        "price_cut_at": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "previous_price_eur",
        "price_cut_at"
      ]
    },
    "cheaper_weeks_of_same_boat": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "departure": {
            "type": [
              "string",
              "null"
            ]
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "departure",
          "return",
          "price_eur",
          "discount_pct",
          "page"
        ]
      }
    },
    "price_checked_at": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "boat",
    "verdict",
    "summary",
    "vs_median_pct",
    "compared_on",
    "market",
    "price_drop",
    "cheaper_weeks_of_same_boat",
    "price_checked_at"
  ]
}
🟢trip_cost(id, url, people, skipper, extras)

What one boat-week really costs a group: boat price plus mandatory extras (charter pack, transit log, cleaning, tourist tax…) priced by their unit (per booking, per night, per person), plus a skipper and other optional extras on request; total and per person, with what is not included (deposit, fuel, marinas, food).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "Boat-week id: the number at the end of the page URL, e.g. 1131 for /en/deals/turkey/1131"
    },
    "url": {
      "type": "string",
      "description": "Boat page URL from search_deals, e.g. https://www.rycrentals.com/en/deals/turkey/1131"
    },
    "people": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "description": "People aboard; defaults to the boat's berths"
    },
    "skipper": {
      "type": "boolean",
      "default": false,
      "description": "Add a skipper, if the source lists a price"
    },
    "extras": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 40
      },
      "maxItems": 10,
      "description": "Optional extras to add, by name, e.g. [\"SUP\", \"outboard\", \"bed linen\"]"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "boat": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "model": {
          "type": "string"
        },
        "year": {
          "type": [
            "number",
            "null"
          ]
        },
        "boat_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "country": {
          "type": "string"
        },
        "base": {
          "type": [
            "string",
            "null"
          ]
        },
        "departure": {
          "type": [
            "string",
            "null"
          ]
        },
        "return": {
          "type": [
            "string",
            "null"
          ]
        },
        "price_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "list_price_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "discount_pct": {
          "type": [
            "number",
            "null"
          ]
        },
        "per_berth_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "cabins": {
          "type": [
            "number",
            "null"
          ]
        },
        "berths": {
          "type": [
            "number",
            "null"
          ]
        },
        "page": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "id",
        "model",
        "year",
        "boat_type",
        "country",
        "base",
        "departure",
        "return",
        "price_eur",
        "list_price_eur",
        "discount_pct",
        "per_berth_eur",
        "cabins",
        "berths",
        "page"
      ]
    },
    "people": {
      "type": "integer"
    },
    "nights": {
      "type": "integer"
    },
    "lines": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "item": {
            "type": "string"
          },
          "mandatory": {
            "type": "boolean"
          },
          "unit": {
            "type": "string"
          },
          "unit_price_eur": {
            "type": "number"
          },
          "quantity": {
            "type": "number"
          },
          "total_eur": {
            "type": "number"
          }
        },
        "required": [
          "item",
          "mandatory",
          "unit",
          "unit_price_eur",
          "quantity",
          "total_eur"
        ]
      }
    },
    "total_eur": {
      "type": "number"
    },
    "per_person_eur": {
      "type": "number"
    },
    "not_counted": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "item": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "item",
          "reason"
        ]
      }
    },
    "not_found": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "boat",
    "people",
    "nights",
    "lines",
    "total_eur",
    "per_person_eur",
    "not_counted",
    "not_found",
    "notes"
  ]
}
🟢compare_boats(ids, urls)

2–5 discounted boat-weeks side by side: dates, base, whole-boat price, price per berth, discount, price with per-booking mandatory extras, verdict against the market, cabins, berths, year, length and heads, plus which one is cheapest, biggest discount, newest and largest. Pass ids or page URLs from search_deals.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 1
      },
      "maxItems": 5,
      "description": "Boat-week ids"
    },
    "urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 5,
      "description": "Boat page URLs"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "boats": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "model": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": "string"
          },
          "base": {
            "type": [
              "string",
              "null"
            ]
          },
          "departure": {
            "type": [
              "string",
              "null"
            ]
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "cabins": {
            "type": [
              "number",
              "null"
            ]
          },
          "berths": {
            "type": [
              "number",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          },
          "heads": {
            "type": [
              "number",
              "null"
            ]
          },
          "length_m": {
            "type": [
              "number",
              "null"
            ]
          },
          "mandatory_per_booking_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "price_with_mandatory_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "verdict": {
            "type": "string"
          },
          "vs_median_pct": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "model",
          "year",
          "boat_type",
          "country",
          "base",
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "per_berth_eur",
          "cabins",
          "berths",
          "page",
          "heads",
          "length_m",
          "mandatory_per_booking_eur",
          "price_with_mandatory_eur",
          "verdict",
          "vs_median_pct"
        ]
      }
    },
    "highlights": {
      "type": "object",
      "properties": {},
      "required": []
    },
    "not_found": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "boats",
    "highlights",
    "not_found",
    "notes"
  ]
}
🟢get_destination(country, lang)

One destination in depth: the sailing area, bases and winds, the season month by month (peak, shoulder, off season, monsoon, hurricanes), live discounted boats and the five best deals, market prices by month, one-week routes from its bases and the site pages.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "croatia",
        "greece",
        "italy",
        "turkey",
        "spain",
        "montenegro",
        "seychelles",
        "france",
        "caribbean",
        "thailand",
        "canaries"
      ],
      "description": "Destination slug"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "de",
        "es"
      ],
      "default": "en",
      "description": "Language of titles, texts and stop names"
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "about": {
      "type": "string"
    },
    "season": {
      "type": "string"
    },
    "months": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "month": {
            "type": "string"
          },
          "season": {
            "type": "string"
          }
        },
        "required": [
          "month",
          "season"
        ]
      }
    },
    "live": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "discounted_boats": {
          "type": "number"
        },
        "max_discount_pct": {
          "type": "number"
        },
        "median_discount_pct": {
          "type": "number"
        },
        "cheapest_week_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "as_of": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "discounted_boats"
      ]
    },
    "top_deals": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": "string"
          },
          "base": {
            "type": [
              "string",
              "null"
            ]
          },
          "cabins": {
            "type": [
              "number",
              "null"
            ]
          },
          "berths": {
            "type": [
              "number",
              "null"
            ]
          },
          "departure": {
            "type": "string"
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": "number"
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "price_checked_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "model",
          "year",
          "boat_type",
          "country",
          "base",
          "cabins",
          "berths",
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "per_berth_eur",
          "source",
          "price_checked_at",
          "page"
        ]
      }
    },
    "prices": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "month": {
            "type": "string"
          },
          "boat_type": {
            "type": "string"
          },
          "median_per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "median_week_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "share_20pct_off": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "month",
          "boat_type",
          "median_per_berth_eur",
          "median_week_eur",
          "share_20pct_off"
        ]
      }
    },
    "routes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "start": {
            "type": "string"
          },
          "total_miles": {
            "type": "number"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "title",
          "start",
          "total_miles",
          "url"
        ]
      }
    },
    "pages": {
      "type": "object",
      "properties": {
        "deals": {
          "type": "string"
        },
        "prices": {
          "type": "string"
        },
        "faq": {
          "type": "string"
        }
      },
      "required": [
        "deals",
        "prices",
        "faq"
      ]
    }
  },
  "required": [
    "slug",
    "name",
    "about",
    "season",
    "months",
    "live",
    "top_deals",
    "prices",
    "routes",
    "pages"
  ]
}
🟢search_guides(query, lang, limit)

Searches the site's own answers: FAQ (licences and documents, skipper, payment and deposit, what is included, cancellation, alerts), destination guides and seasons, and one-week routes. Returns the best-matching passages with their page URLs to quote. Ask in the language you pass as lang.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "The question or keywords, e.g. «do I need a licence in Croatia»"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "de",
        "es"
      ],
      "default": "en",
      "description": "Language of titles, texts and stop names"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "text": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "score": {
            "type": "number"
          }
        },
        "required": [
          "kind",
          "title",
          "text",
          "url",
          "score"
        ]
      }
    },
    "hint": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "query",
    "count",
    "results",
    "hint"
  ]
}
🟢list_yacht_models(boat_type, country, min_cabins, limit)

Yacht models (Lagoon 42, Bali 4.2, Oceanis 46.1…) that have discounted weeks now: boats and weeks, destinations, lowest whole-boat and per-berth price, biggest and median discount, cabins, berths, build years and the model page. Filter by boat type, destination and minimum cabins.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "boat_type": {
      "type": "string",
      "enum": [
        "catamaran",
        "monohull"
      ]
    },
    "country": {
      "type": "string",
      "enum": [
        "croatia",
        "greece",
        "italy",
        "turkey",
        "spain",
        "montenegro",
        "seychelles",
        "france",
        "caribbean",
        "thailand",
        "canaries"
      ],
      "description": "Only models with discounted boats in this destination"
    },
    "min_cabins": {
      "type": "integer",
      "minimum": 1,
      "maximum": 8
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer"
    },
    "matching": {
      "type": "integer"
    },
    "models": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "boats": {
            "type": "number"
          },
          "weeks": {
            "type": "number"
          },
          "countries": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "from_price_eur": {
            "type": "number"
          },
          "from_per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "max_discount_pct": {
            "type": "number"
          },
          "median_discount_pct": {
            "type": "number"
          },
          "cabins": {
            "type": "object",
            "properties": {
              "min": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "max": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "min",
              "max"
            ]
          },
          "berths_max": {
            "type": [
              "number",
              "null"
            ]
          },
          "years": {
            "type": "object",
            "properties": {
              "min": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "max": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "min",
              "max"
            ]
          },
          "page": {
            "type": "string"
          }
        },
        "required": [
          "model",
          "slug",
          "boat_type",
          "boats",
          "weeks",
          "countries",
          "from_price_eur",
          "from_per_berth_eur",
          "max_discount_pct",
          "median_discount_pct",
          "cabins",
          "berths_max",
          "years",
          "page"
        ]
      }
    },
    "models_page": {
      "type": "string"
    }
  },
  "required": [
    "count",
    "matching",
    "models",
    "models_page"
  ]
}
🟢get_yacht_model(model, url)

One yacht model in depth: its numbers across all discounted weeks, where it is available and from what price, the ten cheapest weeks, the five biggest discounts and similar models. Pass the model name (e.g. Lagoon 42) or its page URL.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "maxLength": 80,
      "description": "Model name, e.g. Lagoon 42 or Bali 4.6"
    },
    "url": {
      "type": "string",
      "description": "Model page URL, e.g. https://www.rycrentals.com/en/yachts/lagoon-42"
    }
  },
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "model": {
      "type": "object",
      "properties": {
        "model": {
          "type": "string"
        },
        "slug": {
          "type": "string"
        },
        "boat_type": {
          "type": [
            "string",
            "null"
          ]
        },
        "boats": {
          "type": "number"
        },
        "weeks": {
          "type": "number"
        },
        "countries": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "from_price_eur": {
          "type": "number"
        },
        "from_per_berth_eur": {
          "type": [
            "number",
            "null"
          ]
        },
        "max_discount_pct": {
          "type": "number"
        },
        "median_discount_pct": {
          "type": "number"
        },
        "cabins": {
          "type": "object",
          "properties": {
            "min": {
              "type": [
                "number",
                "null"
              ]
            },
            "max": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "required": [
            "min",
            "max"
          ]
        },
        "berths_max": {
          "type": [
            "number",
            "null"
          ]
        },
        "years": {
          "type": "object",
          "properties": {
            "min": {
              "type": [
                "number",
                "null"
              ]
            },
            "max": {
              "type": [
                "number",
                "null"
              ]
            }
          },
          "required": [
            "min",
            "max"
          ]
        },
        "page": {
          "type": "string"
        }
      },
      "required": [
        "model",
        "slug",
        "boat_type",
        "boats",
        "weeks",
        "countries",
        "from_price_eur",
        "from_per_berth_eur",
        "max_discount_pct",
        "median_discount_pct",
        "cabins",
        "berths_max",
        "years",
        "page"
      ]
    },
    "by_destination": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string"
          },
          "boats": {
            "type": "number"
          },
          "from_price_eur": {
            "type": "number"
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "country",
          "boats",
          "from_price_eur",
          "page"
        ]
      }
    },
    "cheapest_weeks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": "string"
          },
          "base": {
            "type": [
              "string",
              "null"
            ]
          },
          "cabins": {
            "type": [
              "number",
              "null"
            ]
          },
          "berths": {
            "type": [
              "number",
              "null"
            ]
          },
          "departure": {
            "type": "string"
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": "number"
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "price_checked_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "model",
          "year",
          "boat_type",
          "country",
          "base",
          "cabins",
          "berths",
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "per_berth_eur",
          "source",
          "price_checked_at",
          "page"
        ]
      }
    },
    "best_discounts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "boat_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "country": {
            "type": "string"
          },
          "base": {
            "type": [
              "string",
              "null"
            ]
          },
          "cabins": {
            "type": [
              "number",
              "null"
            ]
          },
          "berths": {
            "type": [
              "number",
              "null"
            ]
          },
          "departure": {
            "type": "string"
          },
          "return": {
            "type": [
              "string",
              "null"
            ]
          },
          "price_eur": {
            "type": "number"
          },
          "list_price_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "discount_pct": {
            "type": [
              "number",
              "null"
            ]
          },
          "per_berth_eur": {
            "type": [
              "number",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "price_checked_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "model",
          "year",
          "boat_type",
          "country",
          "base",
          "cabins",
          "berths",
          "departure",
          "return",
          "price_eur",
          "list_price_eur",
          "discount_pct",
          "per_berth_eur",
          "source",
          "price_checked_at",
          "page"
        ]
      }
    },
    "similar_models": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "boats": {
            "type": "number"
          },
          "from_price_eur": {
            "type": "number"
          },
          "page": {
            "type": "string"
          }
        },
        "required": [
          "model",
          "boats",
          "from_price_eur",
          "page"
        ]
      }
    }
  },
  "required": [
    "model",
    "by_destination",
    "cheapest_weeks",
    "best_discounts",
    "similar_models"
  ]
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada15 herramientas