Search Canadian dental practices

get/api/public/dental-network/search

Request

  • Base URL: https://book.xonark.com
  • URL: https://book.xonark.com/api/public/dental-network/search
  • Auth: none required

Query parameters

qstring

Name, service, language, or other supported public fact

provincestring

Province filter

localitystring

City or locality filter

postal_codestring

Postal-code filter

limitinteger

Maximum results

servicestring

A service the clinic's own site lists (cleaning, implants, invisalign, emergency, kids …)

languagestring

A language the clinic's own site lists

open'saturday' | 'sunday' | 'weekend' | 'evening'

Published hours: open that day, or closing at/after 18:00 on some day

booking'online' | 'form' | 'xona_request' | 'call' | 'any'

A route usable now: online booking page, clinic request form, a request Xona delivers, a phone number, or any

coverage'cdcp'

A payment plan the clinic says it accepts, on its own website or in a correction its owner made: cdcp is the Canadian Dental Care Plan. Each row quotes the clinic's own words and the day they were read

order'route' | 'soonest'

route (default) orders by booking route; soonest orders one place's practices by when they can be seen, and needs that place: its locality (and province when the name is in more than one), or a postal_code such as M5V or M5V 1B3. Practices whose live schedule Xona reads come first, each page's read now and ordered by their earliest open time for the search's service (cleaning, exam or emergency; cleaning when none is given), then open now, then by when each opens by its own website's hours. Each row then carries when: state (live_schedule, open_now, opens_today, opens_later, unknown), text, time_zone and, for live_schedule, next_step naming the tools that read more times. Every row carries booking_url, the page where the patient books that clinic. A live row the search read also carries earliest (the time, its service_id, start_local, the id that books it and its own booking_url; [] when none in the next 7 days), services (the clinic's own list) and read (outcome time, none or not_read). live_unread counts the live clinics on later pages. Opening hours are not appointment times.

pageinteger

Page of results, from 1; each page holds limit rows

Response

Matching practices. A verified crawler receives full Practice objects; every other client receives PracticeRow objects (projection "row") and reads a practice's facts from the paced profile endpoint.

countinteger required
live_unreadinteger

order=soonest: live clinics in the place on later pages, not read by this search

next_stepstring

order=soonest: how to read the live clinics this page did not (its not_read rows, later pages)

projection'row'

Present when results are PracticeRow objects.

Changes

No recorded changes to this operation across all 1 revision of this API.