HQ Rental Software
    • Getting started
    • Authentication
    • Base URLs, regions and versioning
    • Errors
    • Responses and pagination
    • HQ concepts and glossary
    • Custom fields and item types
    • Dates, time zones and money
    • Filtering and incremental sync
    • Guide: build a booking engine on your website
    • Guide: connect an OTA or broker
    • Guide: sync your fleet and prices to a website
    • Guide: sync invoices and payments to accounting
    • Guide: sync customers with a CRM
    • Guide: take payments
    • Guide: bill tolls and fines
    • Rate limits and idempotency
    • Webhooks
    • Car Rental
      • Comments
        • List the comments of a record
        • Create a comment
        • Update a comment
        • Delete a comment
        • List the comments of a reservation
        • Add a comment to a reservation
        • Delete a reservation comment
      • Currencies
        • List currencies
      • Emails
        • List email templates
        • Send an email template for a record
        • Send the reservation confirmation email
        • Send the rental agreement email
        • List the email templates of a reservation
        • Send an email template for a reservation
        • Create a quote and email it
      • Addresses
        • List the addresses of a record
        • Create an address
        • Get an address
        • Update an address
        • Delete an address
      • Fields
        • List the fields of a record type
        • Get a field by its column
        • List the customer form fields (booking step 5)
      • Blocked Days
        • List blocked days
      • Customer Credits
        • List the credit transactions of a customer
        • Add credit to a customer
        • Update a credit transaction
        • Delete a credit transaction
      • Fines
        • List fines
        • Create a fine
        • Get a fine
        • Update a fine
        • Delete a fine
      • Packages
        • List package items
        • Get a package item
        • List packages
        • Get a package
      • Quotes
        • List quotes
        • Get a quote
      • Rate Types
        • List rate types
        • Create a rate type
        • Get a rate type
        • Delete a rate type
        • Update a rate type
      • Rates
        • List rates
        • Create a rate
        • Get a rate
        • Delete a rate
        • List rates (v2)
        • Update a rate
      • Reservation Attempts
        • List reservation attempts
        • List reservation attempts by email
      • Extensions
        • List the extensions of a reservation
        • Extend a rental
        • Delete an extension
      • External Charges
        • List the external charges of a reservation
        • Add an external charge to a reservation
        • Delete an external charge
      • Adjustments
        • List the adjustments of a reservation
        • Add an adjustment to a reservation
        • Delete an adjustment
      • Payments
        • List the payments of a reservation
        • Record a payment on a reservation
        • Update a payment
        • Release an offline security deposit
        • Refund an online security deposit
        • Charge the customer's saved card
      • Refunds
        • List the refunds of a reservation
        • Record a refund on a reservation
        • Update a refund
      • Reservations
        • Confirm a reservation
        • Cancel a reservation
        • Set a reservation to pending
        • Set a reservation to quote
        • Mark a reservation as no-show
        • Mark a reservation as ready for pick-up
        • Get the options for the dates step (booking step 1)
        • Validate dates and list available vehicle classes (booking step 2)
        • Change the vehicle class of a reservation
        • List additional charges for a vehicle class (booking step 3)
        • Price a vehicle class with selected charges (booking step 4)
        • Create or update the booking customer (booking step 6)
        • Create the reservation (booking step 8)
        • Update a reservation
        • List reservations
        • Get the rental agreement link
        • Mark the rental agreement as signed
        • Get a reservation
        • Assign a vehicle to a reservation
        • Detach the vehicle from a reservation
        • List the vehicles available for a reservation
        • List the free vehicle class upgrades of a reservation
        • Apply a free vehicle class upgrade
        • Upload the driver signature
        • Upload pick-up or return photos
        • Search availability and prices for all vehicle classes
        • List reservations (API v2)
      • Vehicle Replacements
        • List the vehicle replacements of a reservation
        • Replace the vehicle of a rental
        • Delete a vehicle replacement
      • Reservation Agents
        • List the users that can be assigned as agents
        • Assign the agents of a reservation
        • Assign the return agents of a reservation
      • Seasons
        • List seasons
        • Create a season
        • Get a season
        • Update a season
        • Delete a season
      • Security Deposits
        • List security deposit rules
        • Get a security deposit rule
      • Availability
        • List availability of vehicle classes
        • Get availability of a vehicle class
      • Driver Licenses
        • Read a driver license barcode
        • Save a driver license barcode to a reservation customer
        • Upload a driver license image for a reservation customer
    • Filters
      • List filter types and operators
    • Contacts
      • List contact categories
      • Get a contact category
      • List contacts of a category
      • Create a contact
      • Get a contact
      • Update a contact
      • Merge contacts
    • Fleets
      • Additional Charges
        • List additional charges
        • Get an additional charge
      • Features
        • List features
        • Get a feature
      • Locations
        • List locations
      • Blocked Periods
        • List the blocked periods of a vehicle
        • Create a blocked period
        • Update a blocked period
        • Delete a blocked period
      • Branches
        • List vehicle makes
        • Get a vehicle make
        • List branches
      • Damages
        • List the damages of a vehicle
        • Create a vehicle damage
        • Get a vehicle damage
        • Update a vehicle damage
      • Vehicles
        • Models
          • List vehicle models
          • Get a vehicle model
        • Types
          • List vehicle types
          • Get a vehicle type
        • List the maintenance status of a vehicle
        • List vehicles
        • Get a vehicle
        • Update a vehicle
        • List vehicles for toll matching
      • Relocations
        • Create a relocation
        • Delete a relocation
        • List the relocations of a vehicle
      • Telematics
        • List the OBD readings of a vehicle
        • List OBD readings of all vehicles since a reading ID
        • List the telematics alerts of a vehicle
        • List the trips of a vehicle
        • List vehicle alert types
      • Maintenance
        • List repair orders
        • Create a repair order line
        • Update a repair order line
        • Delete a repair order line
        • Get a repair order
        • List maintenance types
      • Vehicle Classes
        • List vehicle classes
        • Get a vehicle class
    • Payment Gateways
      • List saved credit cards of a customer
      • Delete a saved credit card
      • List payment methods
      • Get a payment method
      • Get a payment button
      • Get a payment transaction by UUID
      • Create a payment transaction
      • Refund a payment transaction
      • Re-check a payment transaction
      • List payment transactions
    • Sheets
      • List sheet items
      • Create a sheet item
      • Get a sheet item
      • Update a sheet item
      • List sheets
      • Get a sheet
    • Files
      • List files of a record
      • Upload a file
      • Delete a file
    • Inventory
      • List inventory categories
      • Get an inventory category
      • Shows a list of inventory items
      • Finds inventory item by id
      • Finds inventory price by id
      • shows a list of inventory purchase order
      • Create purchase order
      • Finds purchase order by id
      • Returns report of purchase order
      • Cancels purchase order by id
      • Finds inventory stock by id
    • Invoice
      • List invoices available as e-invoices
      • Download e-invoices
      • Create invoice item
      • List invoice payments
      • Create an invoice payment
      • Get an invoice payment
      • Update an invoice payment
      • Spread a payment over a contact's open invoices
      • List invoices
      • Create an invoice
      • Get an invoice
      • Email an invoice
      • Void an invoice
      • Download an invoice PDF
    • Audit Logs
      • Lists the audit log entries
    • Countries
      • List countries
    • Taxes
      • List taxes
      • Get a tax
    • Users
      • List users
    • Products
      • Categories
        • List product categories
        • Create a product category
        • Update a product category
        • Delete a product category
      • List products
      • Create a product
      • Update a product
      • Delete a product
    • Schemas
      • RequestBodies
      • Money
      • SaveRepairOrderLine
      • ErrorBusinessRule
      • SaveBlockedPeriod
      • ErrorValidation
      • SaveVehicleDamage
      • ErrorNotFound
      • ErrorUnauthorized
      • ReservationSummary
      • ReservationTotal
      • AvailableVehicleClass
      • AdditionalCharge
      • ReservationOverview
      • ReservationPayment
      • FleetsPageInfo
      • FleetsEmptySuccess
      • VehicleDamage
      • BillingAmount
      • InvoiceLine
      • ReservationRefund
      • CustomField
      • Comment
      • PaginationFields
      • Country
      • CustomFieldAddress
      • FilterDescriptor
      • Tax
      • VehicleClassAvailability
      • CustomerCreditTransaction
      • DriverLicenseData
      • DriverLicenseResult
      • Fine
      • FineInput
      • PackageItem
      • Package
      • Quote
      • RateType
      • RateTypeWrite
      • RatePriceInterval
      • RateRecord
      • RateWrite
      • ReservationAttempt
      • ReservationExtension
      • ReservationAdjustment
      • ReservationStatusResult
      • VehicleReplacement
      • ReservationRecord
      • ReservationListItem
      • ReservationListPage
      • ReservationDetail
      • ReservationOverviewWithVehicles
      • Season
      • SeasonWrite
      • SecurityDepositRule
      • OtaVehicleClassAvailability
      • RateV2
      • ReservationDriverV2
      • ReservationListItemV2
      • ContactCategory
      • Contact
      • ContactInput
      • AttachedFile
      • FleetAdditionalCharge
      • Branch
      • VehicleFeature
      • Location
      • VehicleMaintenanceStatus
      • RepairOrder
      • ObdReading
      • VehicleAlert
      • VehicleTrip
      • BlockedPeriod
      • VehicleMake
      • VehicleClassImage
      • VehicleClassFeature
      • VehicleClass
      • VehicleRelocation
      • VehicleType
      • Vehicle
      • InventoryCategory
      • InvoicePayment
      • Invoice
      • InvoiceDetail
      • SavedCreditCard
      • PaymentGatewaySummary
      • PaymentMethod
      • PaymentTransaction
      • ProductCategory
      • Product
      • SheetItem
      • SheetItemInput
      • Sheet

    Filtering and incremental sync

    The filters parameter#

    Many list endpoints accept a filters parameter.
    Its value is a URL-encoded JSON array of filter objects, and all filters must match (AND).
    Each filter object has these keys:
    KeyMeaning
    typestring (also for numbers and IDs), date or boolean
    columnA column the endpoint allows, or a custom field of the endpoint's record type as field_<id>
    operatorOne of the operators of that type; boolean filters have none
    valueThe value; see the operators below
    String operators: contains, not_contains, equals, not_equals, greater_than, less_than, is_null, is_not_null, in_list, not_in_list.
    in_list and not_in_list take an array or a comma-separated string.
    Date operators: between ("YYYY-MM-DD,YYYY-MM-DD"), specific_date, before, after, specific_year, today, tomorrow, yesterday, this_week, this_week_end, next_week, next_two_weeks, next_week_end, this_month, last_3_months, next_3_months, this_quarter, last_quarter, next_quarter, this_year, last_year, next_year, past_year, coming_year.
    Date filters match whole days in the time zone your API user works in (see Dates, time zones and money); before and after include the given day.
    Boolean filters: send 1 or 0, for example {"type": "boolean", "column": "reservation_from_website", "value": 1}.
    The string "false" counts as true.

    Unknown filters are ignored#

    A filter whose column is not allowed by the endpoint, whose type does not match the column, or whose operator does not belong to its type is dropped without an error, and you get unfiltered results.
    Custom field columns (field_<id>) are the exception: any custom field is accepted, and one that belongs to another record type makes the request fail instead of being ignored.
    Test every new filter and check that the result count changes.
    If filters is not valid JSON, the API returns HTTP 400.
    Each list endpoint has its own allowed columns, listed under its filters parameter where the endpoint reference documents one.
    Some list endpoints, such as vehicles and locations, accept filters that are not documented yet; ask HQ Support for their columns.

    Incremental sync with updated_since#

    Instead of reading everything again, ask only for the records that changed.
    These list endpoints accept updated_since and return the records updated at or after that moment:
    GET /car-rental/reservations (v1)
    GET /car-rental/rates (v1 and v2)
    GET /car-rental/rate-types
    GET /car-rental/seasons
    GET /fleets/vehicles
    GET /fleets/vehicle-classes
    GET /contacts/categories and GET /contacts/categories/{category_id}/contacts
    GET /invoices/invoices/e-invoices/{format}
    updated_since is always in UTC, formatted YYYY-MM-DD HH:mm:ss, whatever time zone the responses use.
    A reliable sync loop:
    1.
    Record the current UTC time before you start.
    2.
    Read every page, with the same parameters on each, and updated_since set to the start time of your previous run, minus a few minutes of overlap.
    3.
    Upsert the records by id; the overlap can return a record twice.
    4.
    Save the time from step 1 for the next run.
    updated_since never returns deleted records.
    Some lists also leave out inactive records: vehicle classes (including those of inactive branches), rate types and seasons never return inactive ones, and vehicles leave out unavailable, sold and on-sale ones, and those whose class or branch is inactive, unless you send show_inactive=1.
    A record that is deactivated simply stops appearing, and no Deleted webhook is sent for it.
    To detect deletions, use Deleted webhooks (see Webhooks) or regularly compare the full list of IDs; to detect deactivations, compare the full list of IDs.
    Modified at 2026-10-29 13:56:40
    Previous
    Dates, time zones and money
    Next
    Guide: build a booking engine on your website
    Built with