Skip to content

PracSuite API (v1)

This is the official PracSuite API.

It follows standard REST conventions, so you can work with it using any HTTP client and any programming language that can send HTTP requests.

All responses are returned in JSON format.

Download OpenAPI description
Overview
PracSuite API Support
License
Languages
Servers
Prod server
https://api.pracsuite.com/v1/

Appointment

test

SchemasOperations

Appointment Type

test

SchemasOperations

Available Appointment

Avaiasldfsdflsd

SchemasOperations

Available Appointment

app_timestring(date-time)
column_numberinteger
item_idinteger
item_group_idinteger or null
hourly_billingboolean
ndis_claim_typestring or null
ndis_cancellation_reasonstring or null
appointment_type_idinteger
practitioner_business_idinteger
practitioner_idinteger
business_idinteger
profession_idinteger
widthinteger
durationinteger
resource_idsArray of integers
practitioner_namestring
{ "app_time": "2019-08-24T14:15:22Z", "column_number": 0, "item_id": 0, "item_group_id": 0, "hourly_billing": true, "ndis_claim_type": "string", "ndis_cancellation_reason": "string", "appointment_type_id": 0, "practitioner_business_id": 0, "practitioner_id": 0, "business_id": 0, "profession_id": 0, "width": 0, "duration": 0, "resource_ids": [ 0 ], "practitioner_name": "string" }

List available appointment times

Request

Security
x-api-key and A-api-key
Query
fromstring(date)required
tostring(date)required
appointment_type_idintegerrequired
client_idinteger

Required if account_id is not null

account_idinteger
business_idsArray of integers
practitioner_idsArray of integers
profession_idsArray of integers
resource_idsArray of integers
pageinteger>= 1
Example: page=1
page_sizeinteger[ 1 .. 100 ]
Example: page_size=50
curl -i -X GET \
  'https://api.pracsuite.com/v1/available_appointments?from=2019-08-24&to=2019-08-24&appointment_type_id=0&client_id=0&account_id=0&business_ids=0&practitioner_ids=0&profession_ids=0&resource_ids=0&page=1&page_size=50' \
  -H 'A-api-key: YOUR_API_KEY_HERE' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Responses

A list of appts

Bodyapplication/json
available_timesArray of objects(AvailableAppointment)
total_entriesinteger
linksobject
Response
application/json
{ "available_times": [ {} ], "total_entries": 0, "links": { "self": "https://api.pracsuite.com/v1/available_appointments?page=2&appointment_type_id=1&from=2025-01-01&to=2025-01-07", "previous": "https://api.pracsuite.com/v1/available_appointments?page=1&appointment_type_id=1&from=2025-01-01&to=2025-01-07", "next": "https://api.pracsuite.com/v1/available_appointments?page=3&appointment_type_id=1&from=2025-01-01&to=2025-01-07" } }

Get Next available appointment time

Request

Security
x-api-key and A-api-key
Query
fromstring(date)required
tostring(date)required
appointment_type_idintegerrequired
client_idinteger

Required if account_id is not null

account_idinteger
business_idsArray of integers
practitioner_idsArray of integers
profession_idsArray of integers
resource_idsArray of integers
curl -i -X GET \
  'https://api.pracsuite.com/v1/next_available_appointment?from=2019-08-24&to=2019-08-24&appointment_type_id=0&client_id=0&account_id=0&business_ids=0&practitioner_ids=0&profession_ids=0&resource_ids=0' \
  -H 'A-api-key: YOUR_API_KEY_HERE' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Responses

Next Available Appt

Bodyapplication/json
available_timesArray of objects(AvailableAppointment)
total_entriesinteger
linksobject
Response
application/json
{ "available_times": [ {} ], "total_entries": 0, "links": { "self": "https://api.pracsuite.com/v1/next_available_appointment?page=2&appointment_type_id=1&from=2025-01-01&to=2025-01-07" } }

Available Group Appointment

Avaiasldfsdflsd

SchemasOperations

Business

sdfsfd

SchemasOperations

Fee Category

sdfsfd

SchemasOperations

Item

sdfsfd

SchemasOperations

Item Group

sdfsfd

SchemasOperations

Patient

Patients are the people that book in for appointments.

When you're working with patient information, make sure you abide by the relevant regulations for security and privacy.

A couple of fields in the patient record deserve special consideration:

accepted_privacy_policy stores the patient's consent to the business's own privacy policy. Values can be null (no response), true (accepted) or false (rejected). Please consider how this may affect you storing information on this patient.

time_zone will contain a valid IANA time zone identifier if the patient's time zone has been set, or null if it hasn't. It can be set via the API, in which case it accepts IANA time zone identifiers.

SchemasOperations

Practitioner

test

SchemasOperations

Profession

test

SchemasOperations

Pronoun

test

SchemasOperations

Resource

test

SchemasOperations

Sex

test

SchemasOperations