handlediq-com Get Quote API
The Get Quote API from handlediq-com — 1 operation(s) for get quote.
The Get Quote API from handlediq-com — 1 operation(s) for get quote.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/handlediq-com:handlediq-com-get-quote-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: 'HandledIQ: find and book home service Get Quote API'
version: 1.4.1
description: 'HandledIQ runs home service shops (heating and cooling, plumbing, electrical, roofing, pest control, junk removal, demolition and more). For a person''s own AI assistant: find_help with what they need and their ZIP finds the shops near them that do it, each with its own book price, all in, its soonest real open time and its signed record (work finished, callbacks, arrivals kept, ratings). hold_time holds one shop''s time for 10 minutes and that shop texts the person a link; the visit is booked only when the person books it on the shop''s page, never on your word. booking_status says whether they did. Once booked, move_booking has the shop text the person a link to pick a new time, and cancel_booking cancels for free within 3 days of booking, before the visit. Every price is all in, paid after the work. request_service with a shop''s business_id opens HandledIQ''s quote window on it, where the person does the same themselves; get_quote gives one shop''s price and times by its business_id. The same calls speak MCP at https://app.handlediq.com/agents/mcp.'
servers:
- url: https://app.handlediq.com/agents
tags:
- name: Get Quote
paths:
/api/get_quote:
post:
operationId: get_quote
summary: Get one shop's price and open times
description: Gets this shop's own book prices for what the person needs and its next real open times. Use it when the person wants a price or a time from this shop. Returns a quote_id for hold_time, the prices (all in, US dollars), their terms and up to 6 open times. visit true means no fixed price fits exactly, so the price is the shop's visit to find the problem. A price over the owner's limit waits for the owner; work outside the shop's trade gets no quote. Sends nothing to anyone. The shop is the one business_id names; kind is one of the kinds request_service gave, or leave it out and say the need in words.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
business_id:
type: string
description: 'The shop''s business_id: its provider_business_id in HandledIQ''s business feed, or a find_help answer''s.'
need:
type: string
description: 'What the person needs, in a line, like: AC check, a roof leak, ants in the kitchen, or a couch to haul away.'
assistant:
type: string
description: Your own name, as the person you act for knows you, like ChatGPT, Claude or Muse. It goes in the text the shop sends them.
budget_dollars:
type: number
description: Optional. The most the person wants to pay, in dollars.
day:
type: string
description: Optional. The first day that works for the person, YYYY-MM-DD; times start that day.
kind:
type: string
description: Optional. One of the shop's kinds of work, as request_service gave them (work[].kind).
required:
- business_id
- need
- assistant
additionalProperties: false
responses:
'200':
description: Answered.
content:
application/json:
schema:
allOf:
- type: object
properties:
ok:
const: true
required:
- ok
- type: object
properties:
quote_id:
type:
- string
- 'null'
description: Holds a time with hold_time. Null when the shop does not do that kind of work.
shop:
type: string
waits_for_owner:
type: boolean
visit:
type: boolean
currency:
type: string
enum:
- USD
description: Every amount is US dollars.
prices:
type: array
items:
type: object
properties:
option_id:
type: string
name:
type: string
detail:
type: string
price_cents:
type: integer
price:
type: string
within_budget:
type: boolean
required:
- option_id
- name
- price_cents
- price
terms:
type: object
description: 'The terms every price here comes with: all in with no fees, paid after the work, and free to cancel within cancel_free_days of booking, before the visit.'
properties:
all_in:
type: boolean
fees_cents:
type: integer
pay:
type: string
enum:
- after_the_work
cancel_free_days:
type: integer
words:
type: string
required:
- all_in
- fees_cents
- pay
- cancel_free_days
- words
times:
type: array
items:
type: object
properties:
time_id:
type: string
when:
type: string
description: 'The time in the shop''s own time zone (time_zone), like: Today, 8 to 10 AM or Thu, Oct 22, 8 to 10 AM. Today is the shop''s today.'
time_zone:
type: string
description: 'The shop''s time zone, like: America/Chicago.'
label:
type: string
description: 'The time as a button says it, like: Wed 8 to 10 AM.'
starts_at:
type: string
format: date-time
ends_at:
type: string
format: date-time
tech:
type:
- string
- 'null'
required:
- time_id
- when
- starts_at
- ends_at
holds_times:
type: boolean
next:
type: string
required:
- quote_id
- shop
- currency
- prices
- terms
- times
- holds_times
- next
'400':
description: The arguments were not a JSON object.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
'404':
description: No such quote or shop.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
'409':
description: 'Not now: the quote''s state or the time changed.'
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
'422':
description: An argument to fix; the error says which.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
'429':
description: Too many calls; the error says when to come back.
content:
application/json:
schema:
$ref: '#/components/schemas/Failure'
tags:
- Get Quote
components:
schemas:
Failure:
type: object
properties:
ok:
const: false
error:
type: string
required:
- ok
- error