Booking Hotel Rate Parity Monitor avatar

Booking Hotel Rate Parity Monitor

Pricing

from $4.25 / 1,000 actionable insights

Go to Apify Store
Booking Hotel Rate Parity Monitor

Booking Hotel Rate Parity Monitor

Turn hotel, route, or offer records into ranked, evidence-backed travel pricing signals.

Pricing

from $4.25 / 1,000 actionable insights

Rating

0.0

(0)

Developer

ng. night

ng. night

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

๐Ÿจ Booking Hotel Rate Parity Monitor

Normalize room, meal, cancellation and tax terms and flag material rate-parity gaps.

Built for hotels and revenue managers, this Actor turns current and historical hotel, route, or offer records into a ranked, evidence-backed action queue. Bring the records; get the changes, priorities, risks, and source evidence that deserve attention.

๐Ÿš€ What this Actor helps you do

  • Act on the workflow: Normalize room, meal, cancellation and tax terms and flag material rate-parity gaps.
  • Review exceptions, not raw feeds: rank new, changed, removed, or optionally unchanged entities by priority.
  • Explain every result: keep reasons, exact changed fields, confidence, source provenance, and a SHA-256 evidence digest.
  • Automate the handoff: send structured results to a dataset, API client, webhook, spreadsheet, BI tool, CRM, or alerting workflow.

This is a decision layer, not a hidden scraper. You choose the lawful data source and can reproduce every result by supplying explicit current and previous snapshots.

โœจ Workflow advantages

  • Room And Rate Plan Resolution โ€” Prefer stable identifiers and normalized fallbacks so repeat observations line up reliably.
  • Total Stay Normalization โ€” Prefer stable identifiers and normalized fallbacks so repeat observations line up reliably.
  • Evidence Snapshots โ€” Preserve reasons, changed fields, source context, and a deterministic evidence digest.

Every run also applies deterministic entity matching, configurable field comparison, duplicate suppression, opportunity/risk term checks, and output limits.

๐ŸŽฏ Common use cases

  1. Core workflow โ€” Normalize room, meal, cancellation and tax terms and flag material rate-parity gaps.
  2. Scheduled monitoring โ€” run on a cadence and compare the latest records with the prior snapshot.
  3. Team action queue โ€” route only high-priority results to hotels and revenue managers.
  4. Evidence export โ€” retain source records and field-level reasons for QA, reporting, or human review.

๐Ÿ“ฅ Input options

For production, normalize or join your configured source datasets first, then send the unified records into this decision layer.

ModeWhen to use it
inlineFast tests, API integrations, or records assembled in your own code
datasetProduction pipelines that already write current records to Apify
upstream-actorRun one explicitly selected upstream Actor and analyze its dataset
official-apiRead an authorized HTTPS JSON endpoint with secret request headers

Add previousRecords or previousDatasetId to detect changes. Exact platform IDs are preferred; fuzzy matching is available when strong identifiers are missing.

Default identity fields: hotelId, propertyId, routeId, offerId, id, url, name

Default comparison fields: name, destination, price, currency, availability, rating, reviewsCount, roomType, fareClass, cancellationPolicy

โšก Quick start

Paste this into the Actor input editor and replace the sample records with your own:

{
"sourceMode": "inline",
"records": [
{
"hotelId": "hotel-demo-001",
"name": "Harbour View Hotel",
"destination": "Hong Kong",
"price": 118,
"currency": "USD",
"availability": "available",
"availabilityCount": 4,
"rating": 4.5,
"reviewsCount": 2900,
"roomType": "Harbour room",
"cancellationPolicy": "Free cancellation",
"discount": 32,
"observedAt": "2026-08-02T10:00:00Z",
"productWorkflow": "booking-hotel-rate-parity-monitor"
}
],
"previousRecords": [
{
"hotelId": "hotel-demo-001",
"name": "Harbour View Hotel",
"destination": "Hong Kong",
"price": 176,
"currency": "USD",
"availability": "available",
"availabilityCount": 9,
"rating": 4.5,
"reviewsCount": 2870,
"roomType": "Harbour room",
"cancellationPolicy": "Non-refundable",
"discount": 0,
"observedAt": "2026-08-01T10:00:00Z",
"productWorkflow": "booking-hotel-rate-parity-monitor"
}
],
"minimumScore": 35,
"maxEvents": 100,
"includeNew": true,
"includeChanged": true,
"includeRemoved": false
}

Then adjust:

  • minimumScore to control how selective the action queue is.
  • maxEvents to cap delivered insights.
  • includeNew, includeChanged, includeRemoved, and includeUnchanged to define which states matter.
  • customIdFields and customCompareFields when your source schema uses different names.

๐Ÿ“ค Output you can use immediately

Each delivered dataset item includes:

FieldMeaning
eventTypenew, changed, removed, or unchanged
entityId / entityLabelCanonical machine ID and readable entity name
priorityScoreDeterministic 0โ€“100 review priority
riskScoreDeterministic 0โ€“100 caution signal
confidenceEvidence completeness and identity confidence from 0โ€“1
reasonsPlain-language reasons behind the ranking
changedFieldsExact fields that changed from the previous snapshot
current / previousSanitized source evidence used for comparison
sourceType / sourceIdNon-secret provenance for the input records
evidenceDigestSHA-256 digest of canonical current/previous evidence

The KVS OUTPUT record contains the run summary, counts, duplicate diagnostics, and score range.

๐Ÿ”Œ API and automation

Run the Actor through the API:

curl -X POST \
"https://api.apify.com/v2/acts/night111~booking-hotel-rate-parity-monitor/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d @input.json

Use the returned defaultDatasetId to fetch results. For unattended workflows, combine the Actor with Apify schedules, webhooks, API clients, Make, Zapier, or your own orchestration service.

๐Ÿง  How decisions are produced

The Actor uses explainable rules over configured identity fields, field deltas, numeric movement, opportunity terms, caution terms, completeness, and identity confidence. It does not present a model-generated verdict as fact. Important actions should be checked against the attached source evidence.

๐Ÿ›ก๏ธ Responsible use and scope

  • Workflow-specific caution: Price and availability are point-in-time.
  • Process only data you are authorized to use and follow source-site terms, privacy rules, retention duties, and applicable outreach laws.
  • Product and platform names belong to their respective owners. This independent Actor is not endorsed by those platforms.
  • Secret API headers are encrypted by Apify, omitted from outputs, and credential-like evidence fields are stripped.
  • Do not place tokens in dataset or API URLs; common credential patterns are rejected.

โš ๏ธ Limitations

  • Output quality depends on the completeness, freshness, legality, and schema consistency of your input records.
  • Fuzzy entity resolution is best-effort; stable source IDs produce better comparisons.
  • State is explicit rather than hidden: provide a previous snapshot for reproducible change detection.
  • Authorized API mode reads JSON responses; it is not an arbitrary HTML browser.
  • Upstream Actors and external APIs may have separate availability, permissions, or usage constraints.

โ“ FAQ

Does this Actor collect the source data itself?

Not silently. It analyzes records you provide inline, through datasets, via one explicitly selected upstream Actor, or from an authorized HTTPS JSON API.

Can I run it on a schedule?

Yes. Save each runโ€™s current records as the next runโ€™s previous snapshot, then use an Apify schedule or your orchestrator.

Can I use my own field names?

Yes. Set customIdFields and customCompareFields to align the workflow with your schema.

How do I keep a run bounded?

Use minimumScore and maxEvents. The Actor stops delivering new events once the configured output limit is reached.

๐Ÿ’ฌ Support

Open the Actor Issues tab with a sanitized input example, run ID, expected entity key, and observed behavior. Never post credentials or private source data.