Skip to content

ezyVet API ​

The ezyVet API is a powerful and flexible RESTful interface designed to seamlessly integrate with the ezyVet PIMS. Built with modern web standards, it leverages OAuth 2.0 Client Credentials grant for secure authentication, ensuring robust access control for your applications. The API accepts URL parameters and JSON-formatted requests, delivering responses in JSON format for easy parsing and integration.

This API enables developers to interact with a wide range of ezyVet resources, such as animal records, appointments, diagnostics, and more, allowing for automation and customization of veterinary workflows. Whether you're fetching data, creating records, or updating existing information, the ezyVet API provides a comprehensive set of endpoints to support your needs.

What you'll find 🔎 ​

  • A catalog of endpoints with query parameter and response details.
  • Best practice documents to ensure you're building the best integration possible.
  • Dedicated documentation for providers that specialize in Dx, PACS and ordering.
  • Frequently asked questions and answers.
  • Information on how to apply to use the API and what's involved in the process.

Need more help? 💬 ​

Find more info on our support page.

Check out our guides!


Authenticating ​

ezyVet uses a oauth2.0 style authentication model and utilizes bearer tokens.

Details on how to authenticate can be found here.

When and how often? ​

ezyVet API bearer tokens have a TTL of 12 hours; noted in the response body in epoch format in the expires_in field. An automated solution for refreshing tokens should be put in place to ensure a valid token is always stored.

json
{
  "access_token": "token12345",
  "token_type": "Bearer",
  "expires_in": 1209600
}

When an invalid token is used to make an API call, a 401 Unauthorized response will be given. This should be the indicator to generate a new token.

json
401 Unauthorized
{
 "messages": [
   {
     "level": "error",
     "type": "InvalidRequestException",
     "text": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed. Check the \"access token\" parameter.",
     "fields": []
   }
  ]
}

INFO

We do not suggest nor recommend generating a new access token before every API call. This workflow has the potential to impact the API’s performance.

When generating a bearer token, ensure that all scopes associated with the integration record are provided in the HTTP request. This will allow the token to be used for all appropriate endpoints.


Errors ​

CodeNameDescription
400Bad RequestYou have submitted an erroneous request. Check the URL, as well as all the input fields.
401UnauthorizedYour request is not allowed. Check if your access token or client credential is valid.
403ForbiddenThe endpoint requested is either not allowed for you, or does not exist at all.
405Method Not AllowedThe endpoint exists, but the HTTP method is not supported for it.
422Unprocessable EntityYour request itself is correct, but it fails one or more of our validation checks. Please see the error message in the response for details.
500Internal Server ErrorOops, something's wrong on our end. 😦 Please check back later.

Field Comparators ​

Unless otherwise specified, each field from the params of GET requests will accept multiple comparators in URL-encoded JSON. The following comparators are supported:

ComparatorArithmeticStringRemarks
Less than<lt-
Less than or equal<=lte-
Equal=eq-
Greater than or equal>=gte-
Greater than>gt-
Not equal-neq-
Like-likeString fields only
In-inSimilar Equal, except that it tries to find at least one match against many.

Examples ​

  1. An API call to fetch Appointments that were created or modified after 1729455014 (epoch time).
cURL
curl    --location 'https://apiv2.trial.ezyvet.com/v2/appointment?modified_at={%22gte%22%3A1729455014}' \
        --header 'Authorization: ••••••'

Paging ​

On various results (mainly GET), you will notice the following under the meta[] property. These are used for item page navigation of the request.

metaDescription
items_pageCurrent page of the result. On requests, you can pass page to specify the page to be returned. (Default: 1)
items_page_totalTotal number of pages that the same request will return.
items_page_sizeNumber of items per page.
items_totalTotal number of items

Page size ​

The default page size is 10 and can be increased up to 200 for most endpoints through the use of the limit query parameter.

HTTP
GET /v2/contact?limit=200 HTTP/1.1
Host: apiv2.trial.ezyvet.com
Authorization: Bearer token

Large initial syncing ​

Often there is a need to pull a large number of records from a database as part of an initial load/sync. Due to the way the ezyVet API is built, navigating through thousands of pages can cause extensive load, resulting in a long response time. By reducing the context of the search, this can be mitigated.

It's recommended to partition the sync by following the below steps:

  1. Using the active, id and limit query parameters, pull a certain number of records into context and enlargen the page size by using the gt and lt field comparators.

E.g. Fetch all active contact records where the ID is greater than 0 and less than 1001 and make the page size 200.

HTTP
GET /v2/contact?id={"gt":0, "lt":1001}&active=true&limit=200 HTTP/1.1
Host: apiv2.trial.ezyvet.com
Authorization: Bearer token
  1. With only 1000 objects to parse and 200 objects appearring per page, only 5 pages need to be loaded. By using the page query parameter, we can navigate the data easily and efficiently.
HTTP
GET /v2/contact?id={"gt":0, "lt":1001}&active=true&limit=200&page=1 HTTP/1.1
Host: apiv2.trial.ezyvet.com
Authorization: Bearer token
  1. Once the data from all 5 pages have been loaded, the process can be incremented based on the ID.
HTTP
GET /v2/contact?id={"gt":1000, "lt":2001}&active=true&limit=200&page=1 HTTP/1.1
Host: apiv2.trial.ezyvet.com
Authorization: Bearer token

Questions ​

Some API GET endpoints support Questions.

Questions return results from complex queries about a resource. For example, the Product question stocklevel will return various Product stock level numbers, such as total stock, stock allocated to invoices and so on.

WARNING

It's recommended to use the /inventory/v1/products endpoint to retrieve inventory/batch tracked products and their corrosponding inventory balances.


Request Throttling ​

All endpoints are throttled at a certain number of requests per minute. This is to minimize the impact that API calls have on the performance of the system for users.

The throttle limits vary, depending on the endpoint and the data it provides, but most commonly is set to 60 calls per minute.

In addition to an endpoint specific rate limit there is also a global rate limit, which is by default set to 180 calls per database per Partner. This allows multiple endpoints to be called within the same rate limit period (minute), collectively up to the global limit.

If the number of calls made exceeds the limit in any rate limit period, the API will restrict further calls and return a 429 error message. One endpoint limit being reached will not restrict you from making calls to another that has not reached its own limit, while you remain within the global limit for that rate limit period.

An integration is identified by it’s UUID (partner_id) and is granted a rate limit for each ezyVet database. These limits are independent of each other meaning if the limit is reached on one database, the other database is not impacted.

INFO

If multiple instances of the same API Partner record (multiple sets of client credentials) are configured on one site that share a partner_id, they will share the rate limit.

Paying attention to the amount of calls an integration is making in a given throttling period is important as any calls that are made in excess of the limit are not accepted/processed by the API.

If a large number of excessive calls are made, it has the chance of impacting the performance of not just the API but the UI of the affected site as well. This will be directly noticed by the users of the software and may result in ezyVet staff disabling the API connection to preserve the integrity of the site.

INFO

Ensure to look out for the HTTP response headers described below.

HeaderDescription
x-ratelimit-limitThe maximum number of requests that can be made within the current throttling period.
x-ratelimit-remainingThe number of requests remaining within the current throttling period. If this value is 30, then you have 30 requests remaining within the current throttling period.
x-ratelimit-resetThe cooldown or reset/throttling period. After x-ratelimit-reset seconds have passed, the x-ratelimit-remaining quantity will be reset to the x-ratelimit-limit amount.
x-item-limit-per-pageThe maximum amount of records that can be requested per page, using the limit query parameter.

The API accepts URL params and JSON-formatted requests, and returns JSON-formatted responses.


Authentication​

Authenticate with the ezyVet API


Deprecated

Fetch a JWT bearer token​

POST
/v1/oauth/access_token

It's recommended to use the V2 authentication endpoint

Request Body​

application/json
JSON
{
"partner_id": "string",
"client_id": "string",
"client_secret": "string",
"grant_type": "client_credentials",
"scope": "string",
"site_uid": "string"
}

Responses​

A JSON object containing the access token details.

application/json
JSON
{
"access_token": "string",
"token_type": "string",
"expires_in": 0
}

Samples​

cURL
JavaScript
PHP
Python

Authentication V2​

Authenticate with the ezyVet API


Fetch a JWT bearer token​

POST
/oauth/token

Generates a valid access token, given client credentials. Access tokens have an 12-hour TTL.

Request Body​

application/json
JSON
{
"partner_id": "string",
"client_id": "string",
"client_secret": "string",
"grant_type": "client_credentials",
"scope": "string",
"site_uid": "string"
}

Responses​

A JSON object containing the access token details.

application/json
JSON
{
"access_token": "string",
"token_type": "string",
"expires_in": 0
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing contact records, including addresses, contact details, and associations between contacts.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Address​


Fetches a list containing Address(es)​

GET
/v1/address

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
name
Typestring
street_1
Typestring
street_2
Typestring
suburb
Typestring
city
Typestring
region
Typestring
post_code
Typestring
state
Typestring
country_id
Typestring
longitude
Typestring
latitude
Typestring

Responses​

A list of Addresses

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"address": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"street_1": "string",
"street_2": "string",
"suburb": "string",
"city": "string",
"region": "string",
"post_code": "string",
"country_id": "string",
"state": "string",
"longitude": "string",
"latitude": "string",
"for_resource": {
"Contact": {
"id": "string"
}
}
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Get a Communication​

GET
/v1/communication

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

associated_type

The name of the record type the Communication is directed at. Examples are 'Contact', 'Animal', 'Consult'.

Typestring
associated_id

The ID of the record the Communication is directed at.

Typenumber
content_format

The format of the content. This will be one of the following: SMS, PlainText, HTML.

Typestring
Enum
"SMS""PlainText""HTML"
status

The status of the Communication. This will be one of the following: Pending, Done, Sending, Failed.

Typestring
Enum
"Pending""Done""Sending""Failed"
communicating_type

The name of the record type the Communication is communicating. Examples are 'Contact', 'Animal', 'Consult'.

Typestring
communicating_id

The ID of the record the Communication is communicating.

Typenumber

Responses​

A list of Communications

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"communication": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"associated_type": "string",
"associated_id": 0,
"contact_detail_type_id": 0,
"destination": "string",
"origin": "string",
"direction": "string",
"sent_as_user": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"is_vet": true,
"is_salesperson": true,
"name": "string",
"code": "string"
},
"content": "string",
"content_format": "string",
"status": "string",
"subject": "string",
"communicating_type": "string",
"communicating_id": 0,
"template": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"subtype": "string",
"additional_information": {
}
},
"read_at": 0
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Contact​

Manages contact records for clients, owners, or other associated individuals.


Fetches a list containing Contacts​

GET
/v1/contact

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Contact.

active

If true, the Contact is active and usable in ezyVet.

created_at

The epoch time when the Contact was created.

modified_at

The epoch time when the Contact was last modified.

ownership_id

The ID of the ownership Separation to which this Contact belongs.

code

The custom code override for the Contact.

Typestring
first_name

The Contact's first name.

Typestring
last_name

The Contact's last/family name.

Typestring
business_name

The Contact's business name, if it is a business.

Typestring
is_business

If true, the Contact is a business.

is_customer

If true, the Contact is a customer.

is_supplier

If true, the Contact is a supplier.

is_vet

If true, the Contact is a vet.

is_syndicate

If true, the Contact is a syndicate.

is_staff_member

If true, the Contact is a staff member.

website

The Contact's website.

Typestring
address_postal

The unique identifier of the PostalAddress.

stop_credit

Specifies if the Contact can be invoiced: OK (invoiceable), WARNING (issues a warning when invoiced), STOP (cannot be invoiced).

Typestring
Enum
"OK""WARNING""STOP"
limit

Sets the limit on the number of items returned (range: 1 - 50).

default10
page

Specifies the page number of the result.

default1
date_of_birth

The date of birth of the primary contact.

Typenumber
default0
driver_license_number

The driver license number of the primary contact.

Typestring
defaultnull
driver_license_issuer

The issuer of the driver license of the primary contact.

Typestring
defaultnull
driver_license_expiry

The expiry date of the driver license of the primary contact.

Responses​

A list of Contacts.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"contact": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"code": "string",
"first_name": "string",
"last_name": "string",
"business_name": "string",
"is_business": "string",
"is_customer": "string",
"is_supplier": "string",
"is_vet": "string",
"is_syndicate": "string",
"is_staff_member": "string",
"website": "string",
"stop_credit": "string",
"contact_detail_list": [
0
],
"address_physical": "string",
"address_postal": "string",
"date_of_birth": 0,
"driver_license_number": "string",
"driver_license_issuer": "string",
"driver_license_expiry": 0,
"ownership_id": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Contact Association​

Manages relationships or associations between contacts (e.g., owner and emergency contact).


Fetch a list of contact associations​

GET
/v1/contactassociation

Fetches a list of ContactAssociations.

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ContactAssociation.

Typestring
contact_id

The Contact to fetch the associated contact ids for

Typestring
default"61"
active

If true, the ContactAssociation is active and usable in ezyVet.

Typestring
created_at

The epoch time when the ContactAssociation was created.

Typestring
modified_at

The epoch time when the ContactAssociation was last modified.

Typestring
limit

Limits the number of items returned.

Typenumber
default10
page

Specifies the page number of the result.

Typenumber
default1

Responses​

A list of ContactAssociations.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"contactassociation": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"contact_id": 0,
"associatedcontact_id": 0,
"associationclass": "string"
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Contact Detail​

Handles specific details for contacts, such as phone numbers or email addresses.


Fetch a ContactDetail list​

GET
/v1/contactdetail

Fetches a list containing ContactDetail(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ContactDetail.

Typestring
active

If true, the ContactDetail is active and usable in ezyVet.

Typeboolean
defaulttrue
created_at

The epoch time when the ContactDetail was created.

Typestring
modified_at

The epoch time when the ContactDetail was last modified.

Typestring
name

The name of the ContactDetail, such as "Home Phone" or "Business E-mail".

Typestring
value

The value of the ContactDetail, such as the number, or the email (depending on its ContactDetailType).

Typestring
value_cleaned

The value of the ContactDetail record which has been cleaned of all special characters and prefixed with the country code. This filter can be used for phone or fax numbers but it should not be used for email addresses.

Typestring
contact_id

The ID of the Contact to whom this ContactDetail is assigned.

Typestring
contact_detail_type_id

The ID of the ContactDetailType of this ContactDetail.

Typestring
preferred

If true, this ContactDetail is a preferred contact method for the related Contact.

Typeboolean
defaultfalse
subscription_groups

A list of subscription groups that this ContactDetail is subscribed to (General, Reminders, Accounts).

Typearray

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"contactdetail": {
"id": "string",
"active": true,
"created_at": "string",
"modified_at": "string",
"name": "string",
"value": "string",
"contact_id": "string",
"value_cleaned": "string",
"contact_detail_type_id": "string",
"preferred": false,
"subscription_groups": [
"string"
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Contact Detail Type​

Defines types of contact details (e.g., home phone, work email).


Fetch a ContactDetailType list​

GET
/v1/contactdetailtype

Fetches a list containing ContactDetailType(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an ContactDetailType.

active

If true, the ContactDetailType is active and usable in ezyVet.

created_at

The epoch time when the ContactDetailType was created.

modified_at

The epoch time when the ContactDetailType was last modified.

name

The name of the ContactDetailType.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"procedure": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Country​

Manages country data for addresses.


Fetch a Country list​

GET
/v1/country

Fetches a list containing Country(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Country.

Typestring
active

If true, the Country is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Country was created.

Typestring
modified_at

The epoch time when the Country was last modified.

Typestring
name

The name of the Country.

Typestring
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of countries

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"country": {
"id": "string",
"active": "string",
"created_at": 0,
"modified_at": 0,
"name": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Contact V2​

An updated version of contact management with additional features or fields.


Fetches a list containing Contacts​

GET
/v2/contact

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Contact.

Typestring
uid

The globally unique identifier to identify a Contact.

Typestring
created_at

The epoch time when the Contact was created.

Typestring
modified_at

The epoch time when the Contact was last modified.

Typestring
active

If true, the Contact is active and usable in ezyVet.

Typestring
code

The custom code override for the Contact.

Typestring
first_name

The Contact's first name.

Typestring
last_name

The Contact's last/family name.

Typestring
business_name

The Contact's business name, if it is a business.

Typestring
is_customer

If true, the Contact is a customer.

Typestring
is_vet

If true, the Contact is a vet.

Typestring
is_supplier

If true, the Contact is a supplier.

Typestring
is_syndicate

If true, the Contact is a syndicate.

Typestring
is_staff_member

If true, the Contact is a staff member.

Typestring
stop_credit

Specifies if the Contact can be invoiced: OK (invoiceable), WARNING (issues a warning when invoiced), STOP (cannot be invoiced).

Typestring
Enum
"OK""WARNING""STOP"
website

The Contact's website.

Typestring
address_physical

The unique identifier of the PhysicalAddress.

Typestring
address_postal

The unique identifier of the PostalAddress.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string"
},
"items": [
{
"contact": {
"id": 0,
"uid": "string",
"created_at": 0,
"modified_at": 0,
"active": true,
"code": "string",
"first_name": "string",
"last_name": "string",
"business_name": "string",
"is_customer": true,
"is_business": true,
"is_vet": true,
"is_supplier": true,
"is_syndicate": true,
"is_staff_member": true,
"stop_credit": "string",
"website": "string",
"address_physical": 0,
"address_postal": 0,
"contact_detail_list": [
{
"id": 0,
"name": "string",
"type_id": 0,
"preferred": true,
"value": "string",
"value_cleaned": "string"
}
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Contact Detail V2​

An updated version of contact detail management with enhanced functionality.


Fetch a ContactDetail list​

GET
/v2/contactdetail

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ContactDetail.

Typenumber
active

If true, the ContactDetail is active and usable in ezyVet.

Typeboolean
defaulttrue
created_at

The epoch time when the ContactDetail was created.

Typenumber
modified_at

The epoch time when the ContactDetail was last modified.

Typenumber
name

The name of the ContactDetail, such as 'Home Phone' or 'Business E-mail'.

Typestring
value

The value of the ContactDetail, such as the number, or the email (depending on its ContactDetailType).

Typestring
value_cleaned

The value of the ContactDetail record which has been cleaned of all special characters and prefixed with the country code. This filter can be used for phone or fax numbers but it should not be used for email addresses.

Typestring
contact_id

The ID of the Contact to whom this ContactDetail is assigned.

Typenumber
type_id

The ID of the ContactDetailType of this ContactDetail.

Typenumber
preferred

If true, this ContactDetail is a preferred contact method for the related Contact.

Typeboolean
defaultfalse

Responses​

A list of ContactDetails

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"contactdetail": {
"id": "string",
"active": true,
"created_at": 0,
"modified_at": 0,
"name": "string",
"value": "string",
"contact_id": 0,
"value_cleaned": "string",
"type_id": 0,
"preferred": true
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing payment, invoice and billing records.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Billing Credit​


Fetch a BillingCredit​

GET
/v1/billingcredit

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a BillingCredit.

Typenumber
active

If true, the BillingCredit is active and visible in ezyVet.

Typeboolean
created_at

The epoch time when the BillingCredit was created.

Typenumber
modified_at

The epoch time when the BillingCredit was last modified.

Typenumber
wellness_plan_id

The ID of the Wellness Plan the BillingCredit is associated with.

Typenumber
wellness_plan_benefit_id

The ID of the Wellness Plan Benefit the BillingCredit is associated with.

Typenumber
wellness_plan_membership_id

The ID of the Wellness Plan Membership the BillingCredit is associated with.

Typenumber
wellness_plan_membership_status_period_id

The ID of the Wellness Plan Membership Status Period the BillingCredit is associated with.

Typenumber
associated_type

The name of the record type the BillingCredit is associated with.

Typestring
associated_id

The ID of the record the BillingCredit is associated with.

Typenumber

Responses​

A BillingCredit object

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"billingcredit": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"available_associated_type": "string",
"available_associated_id": 0,
"wellness_plan_id": 0,
"wellness_plan_benefit_id": 0,
"wellness_plan_membership_id": 0,
"wellness_plan_membership_status_period_id": 0,
"associated_type": "string",
"associated_id": 0,
"type": "string",
"amount": 0,
"wasted": 0,
"used": 0,
"start_date": 0,
"expires_in_unit": "string",
"expires_in_qty": 0,
"end_date": 0,
"wellness_plan_membership_cycle_id": 0
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Invoice​


Fetches a list containing Invoice(s).​

GET
/v1/invoice

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

animal_id*

The ID of the Animal associated with the Invoice.

Typestring
Required
id

The ID number used by the system to uniquely identify an Invoice.

Typestring
active

If true, the Invoice is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Invoice was created.

Typestring
modified_at

The epoch time when the Invoice was last modified.

Typestring
ownership_id

The ID of the Ownership Separation to which this Invoice belongs.

Typestring
code

The auto-generated code of the Invoice. Cannot be modified.

Typestring
subtotal

The sum of all InvoiceLines totals exclusive of tax (up to 2 decimal places).

Typestring
tax

The sum of all InvoiceLines tax amounts (up to 2 decimal places).

Typestring
contact_id*

Required. The ID of the Contact associated with the Invoice.

Typestring
Required
consult_id

The ID of the Consult associated with the Invoice.

Typestring
payment_terms_id

The ID for the PaymentTerm of the Invoice.

Typestring
includes_tax

If true, the InvoiceLine totals were calculated from prices that include tax. If false, the InvoiceLine totals were calculated from prices that exclude tax.

Typestring
date

The epoch time of the Invoice transaction date.

Typestring
date_due

The epoch time of when the Invoice transaaction is due for payment.

Typestring
customer_reference_number

Customer reference number for the Invoice.

Typestring
limit

Sets the limit on the number of items returned (range: 1 - 50)

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of Invoices.

application/json
JSON
"string"

Samples​

cURL
JavaScript
PHP
Python

Invoice Line​


Fetches the InvoiceLines for the given Invoice (id=9).​

GET
/v1/invoiceline

Parameters​

Query Parameters

invoice_id*
Typenumber
Required
id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
ownership_id
Typestring
location_id
Typestring
product_id
Typestring
staff_user_id
Typestring
quantity
Typestring
status
Typestring
tax_code
Typestring

Responses​

A list of InvoiceLines.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"invoiceline": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"product_id": "string",
"staff_user_id": "string",
"invoice_id": "string",
"quantity": "string",
"discount": "string",
"price": "string",
"price_tax": "string",
"standard_price": "string",
"standard_price_tax": "string",
"total": "string",
"total_tax": "string",
"status": "string",
"tax_code": "string",
"tax_percent": "string",
"ownership_id": "string",
"location_id": "string",
"consult_id": "string",
"animal_id": "string",
"date": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Payment​


Fetch a Payment list​

GET
/v1/payment

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Payment.

Typestring
created_at

The epoch time when the Payment was created.

Typestring
modified_at

The epoch time when the Payment was last modified.

Typestring
active

If true, the Payment is active and usable in ezyVet.

Typestring
ownership_id

The ID of the ownership Separation to which this Payment belongs.

Typestring
amount

The amount of the Payment. This is the total amount that was paid in the Payment.

Typestring
method

The PaymentMethod used to make the Payment.

Typestring
details

Any details regarding the Payment.

Typestring
date

The date on which the Payment was made.

Typestring
comments

Any comments associated to the Payment.

available

Any surplus Payment amount. Happens when the amount paid was greater than the amount due.

allocated

The portion of the Payment that was allocated against an Invoice or the like.

client_id

The ID of the Client that made the Payment.

cash_amount

The amount paid in cash.

cash_change

The amount of change produced from a cash Payment.

Typestring
rounding_factor

The denomination to which the Payment is rounded.

status

The status of the Payment. E.g. Accepted, Declined etc.

limit

The number of results to return (up to 10).

Typenumber
default10

Responses​

A list containing Payments.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"payment": {
"id": "string",
"created_at": "string",
"modified_at": "string",
"active": "string",
"ownership_id": "string",
"amount": "string",
"method": "string",
"details": "string",
"date": "string",
"comments": "string",
"available": "string",
"allocated": "string",
"client_id": "string",
"cash_amount": "string",
"cash_change": "string",
"rounding_factor": "string",
"status": "string",
"linked_invoices": [
{
"id": "string",
"allocated_amount": "string"
}
]
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Payment Method​


Fetch a PaymentMethod list​

GET
/v1/paymentmethod

Fetches a list containing PaymentMethod(s) (up to 10).

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a PaymentMethod.

Typestring
created_at

The epoch time when the PaymentMethod was created.

Typestring
modified_at

The epoch time when the PaymentMethod was last modified.

Typestring
active

If true, the PaymentMethod is active and usable in ezyVet.

Typestring
name

The name of the PaymentMethod.

Typestring
uses_eftpos_machine

If true, the PaymentMethod uses an eftpos machine.

Typestring
type

The type of the PaymentMethod. E.g. 'Direct'.

Typestring
commission_rate

The commission rate of the PaymentMethod.

Typestring
surcharge_amount

The surcharge amount of the PaymentMethod.

Typestring
surcharge_type

The type of the surcharge.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"paymentmethod": {
"id": "string",
"created_at": "string",
"modified_at": "string",
"active": "string",
"name": "string",
"uses_eftpos_machine": "string",
"type": "string",
"commission_rate": "string",
"surcharge_amount": "string",
"surcharge_type": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Price Adjustment​


Fetches a list of Price Adjustments​

GET
/v1/priceadjustment

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Price Adjustment.

Typenumber
active

If true, the Price Adjustment is applied to the associated record.

Typeboolean
defaulttrue
type

The type of adjustment. Can be one of: User, Credit, Rounding, Discount, Surcharge.

Typestring
associated_type

The type of record that was adjusted.

Typestring
associated_id

The associated_type records ID.

Typestring
triggering_type

The type of record that triggered the Price Adjustment.

Typestring
triggering_id

The triggering_type records ID.

Typenumber
wellness_plan_id

The ID of the related Wellness Plan.

Typenumber
defaultnull
wellness_plan_benefit_id

The ID of the related Wellness Plan Benefit.

Typenumber
defaultnull
wellness_plan_membership_id

The ID of the related Wellness Plan Membership.

Typenumber
defaultnull

Responses​

A list of Price Adjustments with metadata.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"priceadjustment": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"type": "string",
"adjustment_method": "string",
"adjustment_amount": 0,
"associated_type": "string",
"associated_id": "string",
"triggering_type": "string",
"triggering_id": 0,
"description": "string",
"total_change": 0,
"total_change_tax": 0,
"total_earned": 0,
"total_earned_tax": 0,
"consuming": true,
"wellnessplan_id": 0,
"wellnessplan_benefit_id": 0,
"wellnessplan_membership_id": 0
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Estimate​


Fetches a list containing estimates.​

GET
/v2/estimate

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Estimate.

Typenumber
active

If true, the Estimate is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Estimate was created.

Typestring
modified_at

The epoch time when the Estimate was last modified.

Typestring
date

The epoch time of when the Estimate was last updated by the insurer.

Typestring
animal_id

The ID of the Animal associated with Estimate.

Typenumber
contact_id

The ID of the Contact associated with Estimate.

Typenumber

Responses​

A list containing estimates.

application/json
JSON
"string"

Samples​

cURL
JavaScript
PHP
Python

Fetch an Invoice list​

GET
/v2/invoice

Fetches a list containing Invoice(s). (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Invoice.

Typenumber
created_at

The epoch time when the Invoice was created.

Typenumber
modified_at

The epoch time when the Invoice was last modified.

Typenumber
active

If true, the Invoice is active and usable in ezyVet.

Typeboolean
code

The auto-generated code of the Invoice. Cannot be modified.

animal_id

The ID of the Animal associated with the Invoice.

Typenumber
consult_id

The ID of the Consult associated with the Invoice.

Typenumber
contact_id

The ID of the Contact associated with the Invoice.

Typenumber
date

The epoch time of the Invoice transaction date.

Typenumber
date_due

The epoch time of when the Invoice transaction is due for payment.

Typenumber
date_approved

The epoch time of when the Invoice transaction is approved.

Typenumber
approved_by

The ID of the User that approved the Invoice.

Typenumber

Responses​

Successful response

application/json
JSON
{
"meta": {
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"invoice": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"ownership_id": 0,
"created_by": 0,
"modified_by": 0,
"code": "string",
"animal_id": 0,
"consult_id": "string",
"contact_id": 0,
"subtotal": 0,
"tax": 0,
"includes_tax": true,
"payment_terms_id": 0,
"date": 0,
"date_due": 0,
"date_approved": 0,
"approved_by": 0,
"customer_reference_number": "string",
"line_item": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"product_id": 0,
"sales_person": 0,
"quantity": 0,
"discount": 0,
"price": 0,
"price_tax": 0,
"standard_price": 0,
"standard_price_tax": 0,
"total": 0,
"total_tax": 0,
"status": "string",
"tax_code": "string",
"tax_percent": 0,
"ownership_id": 0,
"location_id": 0,
"ledger_account": 0,
"group_id": "string",
"type": "string"
}
],
"financials": [
{
"linked_payments": [
{
"id": "string",
"amount": 0,
"type": "string"
}
]
}
]
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetches the InvoiceLine(s) for a given Invoice.​

GET
/v2/invoiceline

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

invoice_id*
Typestring
Required
id
Typestring
created_at
Typestring
modified_at
Typestring
active
Typestring
product_id
Typestring
batch
Typestring
sales_person
Typestring
quantity
Typestring
status
Typestring
tax_code
Typestring
ownership_id
Typestring
location_id
Typestring

Responses​

A list of InvoiceLines.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"invoiceline": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"product_id": 0,
"batch": 0,
"sales_person": 0,
"invoice_id": 0,
"quantity": 0,
"discount": 0,
"price": 0,
"price_tax": 0,
"standard_price": 0,
"standard_price_tax": 0,
"total": 0,
"total_tax": 0,
"status": "string",
"tax_code": "string",
"tax_percent": 0,
"ownership_id": 0,
"location_id": 0,
"ledger_account": 0,
"group_id": 0,
"type": "string",
"date": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Ledger Account​


Fetch a Ledger Account by ID​

GET
/v2/ledgeraccount/{id}

Parameters​

Path Parameters

id*

The ID number used by the system to uniquely identify a Ledger Account.

Typenumber
Required

Query Parameters

items_page

The page number for pagination.

Typenumber
items_page_size

The number of items per page.

Typenumber

Responses​

Successful response

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"ledgeraccount": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"code": "string",
"name": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Get payments​

GET
/v2/payment

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

amount

The amount of the payment in dollars.

Typeinteger
Example100
method

The ID of the payment method for which the payment was captured.

Typeinteger
Example5
client_contact

The ID of the contact record for which the payment should be assigned.

Typeinteger
Example323
status

The status of the payment.

Typestring
Example"accepted"
ownership_id

The ID of the separation where the payment was taken.

Typeinteger
Example5
date

The date when the payment was taken (in epoch time)

Typeinteger
Example1671477420
details

Details associated with the payment.

Typestring
Example""
comments

Comments associated with the payment.

Typestring
Example""
cash_amount

The amount paid in cash.

Typestring
Example"45.00"
cash_change

The amount of change given in cash.

Typestring
Example0
rounding_factor

The denomination to which the Payment is rounded.

Typestring
Example"0.10"
allocated

The amount allocated to an invoice.

Typeinteger
Example45

Responses​

Gets a payment

application/json
JSON
{
"meta": "string",
"items": [
{
"payment": {
"id": "1",
"active": "true",
"created_at": "1307487862",
"modified_at": "1363044343",
"amount": 57.5,
"method": 5,
"date": 1729542303,
"details": "Payment allocation test",
"outstanding": 0,
"allocated": 57.5,
"comments": "",
"client_contact": 7,
"ledger_account": 8,
"cash_amount": 57.5,
"cash_change": 0,
"rounding_factor": 0.1,
"status": "accepted",
"ownership_id": 4,
"allocations": [
{
"invoice_id": 75,
"amount": 57.5
}
]
}
}
],
"messages": "string"
}

Samples​

cURL
JavaScript
PHP
Python

Tax Rate​


Fetches a list containing Tax Rates.​

GET
/v2/taxrate

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Tax Rate.

Typenumber
created_at

The epoch time when the Tax Rate was created.

Typenumber
modified_at

The epoch time when the Tax Rate was last modified.

Typenumber
active

If true, the Tax Rate is active and usable in ezyVet.

Typeboolean

Responses​

A list of Tax Rates.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"taxrate": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"code": "string",
"rate": 0
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Transaction​


Fetch a list of Transactions​

GET
/v2/transaction

Fetches a list containing Transactions

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Transaction.

Typenumber
created_at

The epoch time when the Transaction was created.

Typenumber
modified_at

The epoch time when the Transaction was last modified.

Typenumber
active

If true, the Transaction is active and usable in ezyVet.

Typeboolean
defaulttrue
payment_id

The ID of the associated Payment linked to this Transaction.

Typenumber
ownership_id

The ID of the Ownership Separation to which this Transaction belongs.

Typenumber

Responses​

A list of Transactions with additional meta information.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"transaction": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"ownership_id": 0,
"payment_id": 0,
"status": "string",
"integration_name": "string",
"external_reference": "string",
"external_id": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing animal records.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Animal​

Represents basic animal data such as name, breed, birthday and so on. Each Animal must have an owner


Fetches a list containing Animal(s)​

GET
/v1/animal

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Animal.

Typestring
active

If true, the Animal is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Animal was created.

Typestring
modified_at

The epoch time when the Animal was last modified.

Typestring
name

The name of the Animal.

Typestring
code

The custom code override for the Animal.

Typestring
sex_id

The ID of the Sex of the Animal.

Typestring
is_dead

If true, the Animal is dead.

Typeboolean
is_hostile

If true, the Animal is not friendly. This is marked by the 'FRIENDLY' or 'CARE' image on ezyVet's Animal screen.

Typeboolean
animalcolour_id

The ID of the AnimalColour.

Typestring
species_id

The ID of the Species of the Animal.

Typestring
breed_id

The ID of the Breed of the Animal.

Typestring
rabies_number

The rabies registration number of the Animal. This field is not necessarily used by clinics throughout the world.

Typestring
date_of_rabies_vaccination

The epoch time that the Animal was vaccinated against rabies. This field is not necessarily used by clinics throughout the world.

Typestring
microchip_number

The microchip number of the Animal.

Typestring
contact_id

The ID of the owner of the Animal.

Typestring
date_of_birth

The epoch time the Animal was born.

Typestring
is_estimated_date_of_birth

If true, the date of birth is considered to be an estimate only.

Typeboolean
date_of_death

The epoch time the Animal died.

Typestring
death_reason

The reason of the Animal death.

Typestring
date_of_desex

The epoch time the Animal was spayed/neutered.

Typestring
referring_clinic_id

The Contact ID of the clinic that referred the Animal.

Typestring
referring_vet_id

The Contact ID of the vet that referred the Animal.

Typestring
residence_contact_id

The Contact ID for the caretaker of the Animal. Populated if and only if the animal does not stay at the same residence as the owner.

Typestring
weight_unit

The unit of weight that the Animal was measured with. This can be either Kilogram (kg), Pounds (lb) or Grams (g).

Typestring
Enum
"kg""lb""g"
weight

The weight of the Animal.

Typestring
resuscitate

Whether the Animal's owner would like it to be resuscitated or not. This can be either No (0), Yes (1) or Advanced Life Support (3).

Typenumber
Enum
013
notes

Notes that are displayed within ezyVet on the animal page.

Typestring
notes_important

If true, the Animal's notes are marked as important.

Typeboolean

Responses​

A list of Animals

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"animal": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"code": "string",
"sex_id": "string",
"is_dead": "string",
"is_hostile": "string",
"animalcolour_id": "string",
"species_id": "string",
"breed_id": "string",
"rabies_number": "string",
"date_of_rabies_vaccination": "string",
"microchip_number": "string",
"contact_id": "string",
"date_of_birth": "string",
"is_estimated_date_of_birth": "string",
"date_of_death": "string",
"death_reason": "string",
"date_of_desex": "string",
"referring_clinic_id": "string",
"referring_vet_id": "string",
"residence_contact_id": "string",
"weight": "string",
"weight_unit": "string",
"resuscitate": "string",
"notes": "string",
"notes_important": true,
"guid": "string"
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Animal Colour​


Fetch an AnimalColour list​

GET
/v1/animalcolour

Fetches a list containing AnimalColour(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an AnimalColour.

Typestring
active

If true, the AnimalColour is active and usable in ezyVet.

Typestring
created_at

The epoch time when the AnimalColour was created.

Typestring
modified_at

The epoch time when the AnimalColour was last modified.

Typestring
name

The name of the AnimalColour.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"procedure": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Breed​

Defines and manages animal breeds within the system.


Fetch a Breed list​

GET
/v1/breed

Fetches a list containing Breed(s). (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

species_id*
Typestring
Required
id
active
created_at
modified_at
name
Typestring
limit
default10
page
default1

Responses​

A JSON object containing the breed list

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"breed": {
"id": "string",
"active": "string",
"created_at": 0,
"modified_at": 0,
"name": "string",
"species_id": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Sex​

Defines and manages animal sex data (e.g., male, female, neutered).


Fetch a Sex list​

GET
/v1/sex

Fetches a list containing Sex(es). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Sex.

Typestring
active

If true, the Sex is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Sex was created.

Typestring
modified_at

The epoch time when the Sex was last modified.

Typestring
name

The name of the Sex.

Typestring
abbreviation

The name of the Sex.

Typestring
is_desexed

If true, the Sex is spayed/neutered.

Typeboolean
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of Sexes.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"sex": {
"id": "string",
"active": "string",
"created_at": 0,
"modified_at": 0,
"name": "string",
"abbreviation": "string",
"is_desexed": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Species​

Defines and manages animal species within the system.


Fetch a Species list​

GET
/v1/species

Fetches a list containing Species. (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Species.

active

If true, the Species is active and usable in ezyVet.

created_at

The epoch time when the Species was created.

modified_at

The epoch time when the Species was last modified.

name

The name of the Species.

Typestring

Responses​

A list of species

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"species": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

Welcome to the ezyVet API Documentation Page!

The ezyVet API (API moving forward) is designed around a RESTful interface and utilizes OAuth 2.0 Client Credentials grant.

The API accepts URL params and JSON-formatted requests, and returns JSON-formatted responses.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Appointment​

Handles scheduling and management of appointments for veterinary services.


Fetch an Appointment list​

GET
/v1/appointment

Gets a list of appointments.

It's recommended to use the GET/v2/appointment endpoint.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Appointment.

Typestring
recurrence_number

The number of the recurring appointment (if the appointment is recurring). E.g. 0 is the original, 1 is the first recurring appointment.

Typestring
active

If true, the Appointment is active and usable in ezyVet.

Typeboolean
created_at

The epoch time when the Appointment was created.

Typestring
modified_at

The epoch time when the Appointment was last modified.

Typestring
recurrence_interval

The interval between recurring appointments (in weeks).

Typestring
default0
recurrence_end_time

The epoch time for when the recurrence ends (if the appointment is recurring).

Typestring
start_time

The epoch time for when the Appointment starts.

Typestring
duration

The duration of the Appointment in seconds.

Typestring
appointment_type_id

Refers to the ID of the AppointmentType of the Appointment.

Typestring
appointment_status_id

Refers to the ID of the AppointmentStatus of the Appointment.

Typestring
animal_id

Refers to the ID of the Animal.

Typestring
consult_id

Refers to the ID of the Consult.

Typestring
contact_id

Refers to the ID of the Contact.

Typestring
limit

Limits the number of results returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"appointment": {
"id": "string",
"recurrence_number": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"recurrence_interval": "string",
"recurrence_end_time": "string",
"start_time": "string",
"duration": "string",
"details": {
"appointment_type_id": "string",
"appointment_status_id": "string",
"description": "string",
"animal_id": "string",
"consult_id": "string",
"contact_id": "string",
"resource_list": [
"string"
]
}
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Appointment Status​

Manages the status of appointments (e.g., scheduled, completed, canceled).


Fetch a Appointment Status list​

GET
/v1/appointmentstatus

Fetches a list containing AppointmentStatus(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a AppointmentStatus.

Typestring
active

If true, the AppointmentStatus is active and usable in ezyVet.

Typestring
created_at

The epoch time when the AppointmentStatus was created.

Typestring
modified_at

The epoch time when the AppointmentStatus was last modified.

Typestring
name

The name of the AppointmentStatus.

Typestring
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of appointment statuses

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"appointmentstatus": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Appointment Type​

Defines types of appointments (e.g., check-up, surgery, vaccination).


Fetch an AppointmentType list​

GET
/v1/appointmenttype

Fetches a list containing AppointmentType(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an AppointmentType.

active

If true, the AppointmentType is active and usable in ezyVet.

Typeboolean
created_at

The epoch time when the AppointmentType was created.

modified_at

The epoch time when the AppointmentType was last modified.

name

The name of the AppointmentType.

Typestring
default_duration

The default duration of the Appointment (in minutes).

default30
limit

Limits the number of results returned.

default10
page

Specifies the page number of the result.

default1

Responses​

A list of AppointmentTypes

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"appointmenttype": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"default_duration": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Resource​

Manages clinic resources, such as staff, rooms, or equipment, for scheduling.


Fetch a Resource list​

GET
/v1/resource

Fetches a list containing Resource(s).
It's recommended to use the v2/resource endpoint.

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Resource.

Typestring
active

If true, the Resource is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Resource was created.

Typestring
modified_at

The epoch time when the Resource was last modified.

Typestring
ownership_id

The ID of the Ownership Separation to which the Resource belongs.

Typestring
name

The name of the Resource.

Typestring
type

The type of the Resource: 'user' (default), 'facility'

Typestring
access

The level of the access the Resource has.

Typestring
Enum
"None""On Calendar""Member"

Responses​

A list of resources.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"resource": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"type": "string",
"access": "string",
"ownership_id": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Appointment V2​

An updated version of appointment management with enhanced features and additional data fields.


Fetch an Appointment list (V2)​

GET
/v2/appointment

Fetch a list of Appointment(s). (up to 200)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Appointment.

Typestring
created_at

The epoch time when the Appointment was created.

Typestring
modified_at

The epoch time when the Appointment was last modified.

Typestring
active

If true, the Appointment is active and usable in ezyVet.

Typeboolean
start_at

The epoch time for when the Appointment starts.

Typestring
duration

The duration of the Appointment in seconds.

Typestring
type_id

Refers to the ID of the AppointmentType of the Appointment.

Typestring
status_id

Refers to the ID of the AppointmentStatus of the Appointment.

Typestring
animal_id

Refers to the ID of the Animal.

Typestring
consult_id

Refers to the ID of the Consult.

Typestring
contact_id

Refers to the ID of the Contact.

Typestring
sales_resource

ID of the SalesResource allocated to the Appointment.

Typenumber

Responses​

Successful response

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"appointment": {
"id": "string",
"created_at": "string",
"modified_at": "string",
"active": true,
"start_at": "string",
"duration": "string",
"type_id": "string",
"status_id": "string",
"description": "string",
"animal_id": "string",
"consult_id": "string",
"contact_id": "string",
"sales_resource": 0,
"resources": [
{
"id": 0
}
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Appointment Type V2​

An updated version of appointment type management with additional options and refinements.


Fetches a list containing AppointmentTypes​

GET
/v2/appointmenttype

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an AppointmentType.

Typenumber
uid

The ID number used by the system to uniquely identify an AppointmentType across all ezyVet sites.

Typestring
active

If true, the AppointmentType is active and usable in ezyVet.

Typeboolean
limit

Limits the number of results returned.

Typenumber
default10
page

Specifies the page number of the result.

Typenumber
default1

Responses​

A list of AppointmentType(s)

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"appointmenttype": {
"id": 0,
"uid": "string",
"active": true,
"name": "string",
"default_duration": 30
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Resource V2​

An updated version of resource management with additional functionality.


Fetches a list of Resources​

GET
/v2/resource

Fetches a list containing Resource(s).

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Resource.

Typenumber
uid

The ID number used by the system to uniquely identify an Resource across all ezyVet sites.

Typestring
created_at

The epoch time when the Resource was created.

Typenumber
modified_at

The epoch time when the Resource was last modified.

Typenumber
active

If true, the Resource is active and usable in ezyVet.

Typeboolean
associated_type

The type of the Resource: 'user' (default), 'facility'

Typestring
associated_id

The ID number used by the system to uniquely identify a user.

Typenumber
associated_uid

The ID number used by the system to uniquely identify a user across all ezyVet sites.

Typestring
access

The level of the access the Resource has. The value can be one of the following: 'None', 'On Calendar' or 'Member'.

Typestring
Enum
"None""On Calendar""Member"
ownership_uid

The ID of the Ownership Separation to which this Resource belongs across all ezyVet sites.

Typestring
ownership_id

The ID of the Ownership Separation to which this Resource belongs.

Typenumber

Responses​

A list of Resources.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"resource": {
"id": 0,
"uid": "string",
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"associated_type": "string",
"associated_id": 0,
"associated_uid": "string",
"access": "string",
"ownership_uid": "string",
"ownership_id": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Availability​

Manages resource or staff availability for scheduling purposes.


Get bookable appointment slots​

GET
/availability

Gets bookable appointment slots | Rate limit : 600 calls/minute

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

resources[]*

This parameter can be added multiple times to filter for more than one resource.

Typestring
Required
Example"resource_Tr4l0W5LbTs7aTGSuzi5n"
dates[]*

This value must be in the future.

Typestring
Required
Example"2024-06-09T00:00:00.000Z"
duration*

The duration of the appointment slots (in minutes). Minimum value is 10, increments in 5 minutes.

Typenumber
Required
Example15
filter[slots.available][eq]*

Filtering by whether the appointment slots are available or not.

Typeboolean
Required
Exampletrue
filter[slots.appointmentType.id][in]

Filtering by appointment type using the UID. Can provide multiple UIDs separated by commas.

Typestring
Example"appointmentType_0C0qtekyEL2A0XDUUSbDz"

Responses​

OK

application/json
JSON
{
"data": [
{
"id": "resourceAvailability_xOjIwMjMtMDktMjcfgf",
"type": "resourceAvailability",
"attributes": {
"date": "2024-06-09",
"timezone": "Pacific/Auckland",
"slots": [
{
"start": "2024-06-30T00:00:00.000+12:00",
"duration": 15,
"available": true,
"relationships": {
"appointmentType": {
"data": [
{
"type": "appointmentType",
"id": "appointmentType_hslifhr56n5j5jiudfh"
}
]
}
}
}
]
},
"relationships": {
"site": {
"id": "site_HIrgCIDevelopmentSite",
"type": "site"
},
"resource": {
"id": "resource_06LfqGFlTXo249hhmPZfk",
"type": "resource"
}
}
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Appointment Booking​


Create a new appointment booking​

POST
/booking

Creates an appointment with associated consultation and billing triggers in the ezyVet system.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

application/json
JSON
{
"startTime": "2025-07-14T09:30:00.000-04:00",
"type": "appointmentType_98765",
"durationMinutes": 30,
"appointmentStatus": "unconfirmed",
"description": "Routine check-up",
"animal": "animal_f47ac10bassssdasda",
"contact": "contact_f47ac10bxcxasdoaids",
"provider": "resource_0L08Ggnl7UB5AhVOys3t1",
"additionalResources": [
[
"resource_0L08Ggnl7UB5AhVOys3t1",
"resource_0L08asdada3t1"
]
]
}

Responses​

Successful booking creation

application/json
JSON
{
"id": "bookingRequest_123",
"appointment": "appointment_asdf"
}

Samples​

cURL
JavaScript
PHP
Python

Shelter Animal Booking​

Manages bookings or records for shelter animals within the clinic.


Fetch a Specific Shelter Animal Booking​

GET
/v2/shelteranimalbooking/{id}

Fetches a specific Shelter Animal Booking specified by its id.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Path Parameters

id*

The ID number used by the system to uniquely identify a Shelter Animal Booking.

Typenumber
Required

Responses​

A single shelter animal booking

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"shelteranimalbooking": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"animal_id": 0,
"start_time": 0,
"end_time": 0,
"consult_id": 0,
"status": "string",
"shelter_resource_place_id": 0,
"contact_id": 0,
"shelter_resource_id": 0,
"shelter_resource_name": "string",
"shelter_resource_ownership_id": 0,
"comment": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing clinical data related to animals, including assessments, diagnostics, consultations, and more.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Assessment​


Fetch an Assessment​

GET
/v1/assessment

Each Assessment must be linked to a Consult.

Parameters​

Query Parameters

id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
consult_id
Typestring
animal_id
Typestring
default5
vet_id
Typestring
timestamp
Typestring
notes
Typestring
limit
Typestring
default10
page
Typestring
default1

Responses​

A JSON object containing the meta information and items array.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"Assessment": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"consult_id": "string",
"animal_id": "string",
"vet_id": "string",
"timestamp": "string",
"notes": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetches a list of Consults​

GET
/v1/consult

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
ownership_id
Typestring
code
Typestring
date
Typestring
animal_id
Typestring
vet_id
Typestring
description
Typestring
limit
Typestring
default10
page
Typestring
default1
referring_vet_contact_id
Typestring
referring_clinic_id
Typestring

Responses​

A list of Consults

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"consult": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"ownership_id": "string",
"code": "string",
"date": "string",
"animal_id": "string",
"vet_id": "string",
"description": "string",
"presenting_problem_link_list": [
0
],
"referring_vet_contact_id": "string",
"referring_clinic_id": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Diagnostic​


Fetch a Diagnostic​

GET
/v1/diagnostic

Parameters​

Query Parameters

id*

The ID number used by the system to uniquely identify a Diagnostic.

Typestring
Required

Responses​

A successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string",
"transaction_id": "string"
},
"items": [
{
"diagnostic": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"code": "string",
"supplier_contact_id": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Creates a single DiagnosticRequest​

POST
/v1/diagnosticrequest

Creates a single DiagnosticRequest that links to a Consult. The objects in the diagnostic_list will all create a DiagnosticRequestItem that has the same Diagnostic using three different methods.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

application/json
JSON
{
"status": "string",
"specifics": "string",
"vet_id": 0,
"consult_id": 0,
"ownership_id": 0,
"diagnostic_list": [
{
"diagnostic_id": 0,
"diagnostic_class": "string"
}
]
}

Responses​

A successful response

application/json
JSON
{
"meta": {
"timestamp": "string"
},
"items": [
{
"diagnosticrequest": {
"id": 0,
"active": true,
"created_at": 0,
"modified_at": 0,
"timestamp": 0,
"contact_id": 0,
"animal_id": 0,
"consult_id": 0,
"vet_id": 0,
"reference_number": "string",
"specifics": "string",
"status": "string",
"supplier_id": 0,
"ownership_id": 0,
"diagnostic_list": [
{
"id": 0,
"active": true,
"created_at": 0,
"modified_at": 0,
"diagnostic_id": 0,
"name": "string",
"diagnostic_class": "string",
"code": "string"
}
]
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a Diagnostic Result list​

GET
/v1/diagnosticresult

Fetches a list containing DiagnosticResult(s). (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an DiagnosticResult.

Typestring
active

If true, the DiagnosticResult is active and usable in ezyVet.

Typestring
created_at

The epoch time when the DiagnosticResult was created.

Typestring
modified_at

The epoch time when the DiagnosticResult was last modified.

Typestring
ownership_id

The ID of the Separation to which this DiagnosticResult belongs.

Typestring
consult_id

Refers to the ID of the Consult where the DiagnosticResult is attached.

Typestring
animal_id

Refers to the ID of the Animal.

Typestring
supplier_id

Refers to the ID of the Contact (who is a supplier) of the diagnostic.

Typestring
vet_id

Refers to the ID of the User (who is a vet) associated with the DiagnosticResult.

Typestring
diagnostic_request_id

Refers to the ID of the DiagnosticRequest linked to the DiagnosticResult.

Typestring
reference_number

Refers to the reference number of the DiagnosticRequest linked to the DiagnosticResult.

Typestring
timestamp

Generally refers to the date when the results of the diagnostic were released. This doesn't necessarily refer to when the DiagnosticResult record was created.

Typestring
specifics

Specifics/notes about the DiagnosticResult.

Typestring
outcome

Notes about the result of the DiagnosticResult. This can be in markdown format.

Typestring
limit

Sets the limit on the number of items returned (range: 1 - 50)

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"diagnosticresult": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"ownership_id": "string",
"consult_id": "string",
"animal_id": "string",
"supplier_id": "string",
"vet_id": "string",
"diagnostic_request_id": "string",
"reference_number": "string",
"timestamp": "string",
"specifics": "string",
"outcome": "string",
"diagnostic_result_item_list": [
"string"
]
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a DiagnosticResultItem list​

GET
/v1/diagnosticresultitem

Fetches a list of DiagnosticResultItem(s) for a DiagnosticResult.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

diagnostic_result_id*
Typestring
Required
id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
timestamp
Typestring
name
Typestring
value
Typestring
unit
Typestring
range_low
Typestring
range_high
Typestring
qualifier
Typestring
notes
Typestring
limit
Typestring
default10
page
Typestring
default1

Responses​

A list of DiagnosticResultItem(s)

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"diagnosticresultitem": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"timestamp": "string",
"diagnostic_result_id": "string",
"name": "string",
"value": "string",
"unit": "string",
"range_low": "string",
"range_high": "string",
"qualifier": "string",
"notes": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a HealthStatus list​

GET
/v1/healthstatus

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

animal_id*

The ID number used by the system to uniquely identify an Animal.

Typenumber
Required

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"healthstatus": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"consult_id": "string",
"animal_id": "string",
"timestamp": "string",
"notes": "string",
"blood_pressure": 0,
"weight": 0,
"weight_unit": "string",
"temperature": 0,
"heart_rate": 0,
"respiratory_rate": 0,
"bcs": 0,
"max_bcs": 9,
"pain_score": "string",
"max_pain_score": 5,
"dental_score": "string",
"max_dental_score": 4,
"crt": "string",
"mm": "string",
"attitude": "string",
"left_ovary_size": 0,
"left_ovary_stage": "string",
"right_ovary_size": 0,
"right_ovary_stage": "string",
"uterine_tone": 0,
"uterine_edema": 0,
"uterine_fluid": "string",
"uterine_cyst": "string",
"uterine_cytology": 0,
"cervix_tone": 0,
"cervix_cytology": 0,
"pregnant": "string",
"pulse_quality": "string",
"respiratory_effort": "string"
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

History​


Fetch a History list​

GET
/v1/history

Fetches a list containing History(s). (up to 10)

Parameters​

Query Parameters

limit
Typenumber
id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
consult_id
Typestring
animal_id
Typestring
history_system
Typestring
chain
Typestring
comments
Typestring
timestamp
Typestring
vet_id
Typestring

Responses​

A list of History items

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"history": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"consult_id": "string",
"animal_id": "string",
"history_system": "string",
"chain": "string",
"comments": "string",
"timestamp": "string",
"vet_id": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Integrated Diagnostic​


Fetch an IntegratedDiagnostic​

GET
/v1/integrateddiagnostic/{id}

Parameters​

Path Parameters

id*

The ID number used by the system to uniquely identify a IntegratedDiagnostic.

Typenumber
Required

Query Parameters

code

A code assigned by an ezyVet user to keep track of the IntegratedDiagnostic. This value is subject to change.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"integrateddiagnostic": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"code": "string",
"supplier_price": 0,
"supplier_currency": "string",
"description": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Operation​


Fetches a list of Operations​

GET
/v1/operation

Parameters​

Query Parameters

animal_id*

The ID number used by the system to uniquely identify an Operation.

Typenumber
Required
id

The ID number used by the system to uniquely identify an Operation.

active

If true, the Operation is active and usable in ezyVet.

created_at

The epoch time when the Operation was created.

modified_at

The epoch time when the Operation was last modified.

consult_id

Refers to the ID of the Consult where the Operation is attached.

vet_id

Refers to the ID of the User who is a Vet and is linked to the Operation.

timestamp

The date when the clinic did a performed the examination for the health status of the Animal. Note that this doesn't necessarily refer to when the Operation record was created.

therapeutic_id

Refers to the ID of the Therapeutic performed in the Operation.

specifics

Contains specifics/notes about the Operation.

Typestring
outcome

Contains notes about the result of the Operation.

Typestring

Responses​

A list of Operations

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"operation": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"consult_id": "string",
"animal_id": "string",
"vet_id": "string",
"timestamp": "string",
"therapeutic_id": "string",
"specifics": "string",
"outcome": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a PhysicalExam list​

GET
/v1/physicalexam

Fetches a list containing PhysicalExam(s). (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an PhysicalExam.

Typestring
active

If true, the PhysicalExam is active and usable in ezyVet.

Typestring
created_at

The epoch time when the PhysicalExam was created.

Typestring
modified_at

The epoch time when the PhysicalExam was last modified.

Typestring
consult_id

Refers to the ID of the Consult where the PhysicalExam is attached.

Typestring
animal_id

Refers to the ID of the Animal.

Typestring
body_system

Refers to the ID of the BodySystem.

Typestring
chain

The chain of BodySystem items thus far.

Typestring
comments

Comments for the PhysicalExam record.

Typestring
timestamp

The date when PhysicalExam was noted for the consult. Note that this doesn't necessarily refer to when the PhysicalExam record was created.

Typestring
vet_id

Refers to the ID of the User who is a Vet and is linked to the PhysicalExam.

Typestring

Responses​

A list of PhysicalExams

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"physicalexam": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"consult_id": "string",
"animal_id": "string",
"body_system": "string",
"chain": "string",
"comments": "string",
"timestamp": "string",
"vet_id": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Plan​


Fetch a Plan​

GET
/v1/plan

Each Plan must be linked to a Consult.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Plan.

Typestring
active

If true, the Plan is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Plan was created.

Typestring
modified_at

The epoch time when the Plan was last modified.

Typestring
consult_id

Refers to the ID of the Consult where the Plan is attached.

Typestring
animal_id

Refers to the ID of the Animal.

Typestring
vet_id

Refers to the ID of the User who is the Vet linked to the Plan.

Typestring
timestamp

The date when the clinic did a performed the examination for the health status of the Animal. Note that this doesn't necessarily refer to when the Plan record was created.

Typestring
notes

Notes about the Plan record.

Typestring
limit

Limits the number of items returned.

Typenumber
default10
page

Specifies the page number of the result.

Typenumber
default1

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"plan": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"consult_id": "string",
"animal_id": "string",
"vet_id": "string",
"timestamp": "string",
"notes": "string"
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Presenting Problem​


Fetch a PresentingProblem list​

GET
/v1/presentingproblem

Fetches a list containing PresentingProblem(s).

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an PresentingProblem.

Typestring
active

If true, the PresentingProblem is active and usable in ezyVet.

Typestring
created_at

The epoch time when the PresentingProblem was created.

Typestring
modified_at

The epoch time when the PresentingProblem was last modified.

Typestring
name

The name of the PresentingProblem.

Typestring
limit

Sets the limit on the number of items returned (range: 1 - 50).

Typestring
minimum1
maximum50
default10
page

Specifies the page number of the result.

Typestring
minimum1
default1

Responses​

A list of presenting problems

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"presentingproblem": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Presenting Problem Link​


Fetch a PresentingProblemLink list​

GET
/v1/presentingproblemlink

Fetch all the PresentingProblemLinks. (up to 10)

Query Parameters

consult_id*
Typestring
Required
id
active
created_at
modified_at
presenting_problem_id
Typestring
limit
default10
page
default1

A list of PresentingProblemLinks

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"presentingproblemlink": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"presenting_problem_id": "string",
"consult_id": "string"
}
}
],
"messages": [
{
}
]
}
cURL
JavaScript
PHP
Python

Fetch a list containing Vaccinations​

GET
/v1/vaccination

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Vaccination.

Typestring
active

If true, the Vaccination is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Vaccination was created.

Typestring
modified_at

The epoch time when the Vaccination was last modified.

Typestring
vet_id

Refers to the ID of the User (vets only) who performed the vaccination.

Typestring
consult_id

Refers to the ID of the Consult related to the Vaccination.

Typestring
product_id

Refers to the ID of the vaccine Product used for the Vaccination.

Typestring
qty

Refers to the amount of product units administered.

Typestring
description

Description and notes for the Vaccination.

Typestring
date_of_administration

The epoch time when the vaccine Product was administered.

Typestring
date_of_next_administration

The epoch time when the vaccine Product will next be administered.

Typestring
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of Vaccinations

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"vaccination": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"vet_id": "string",
"consult_id": "string",
"product_id": "string",
"qty": "string",
"description": "string",
"notes": "string",
"date_of_administration": "string",
"date_of_next_administration": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Event Group​


Get event groups​

GET
/v2/eventgroup

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ezyVet ID of the record.

Typestring
Example"1"
uid

The ezyVet UID of the record.

Typestring
active

If true, the record is active and usable in ezyVet.

Typestring
Example"1"
limit

Sets the number of items to be returned in each page. Default is 10, Limit is 200.

Typenumber
Example200
page

Sets the page to be returned.

Typenumber
Example1
created_at

The epoch time when the record was created.

Typestring
Example1695766710
modified_at

The epoch time when the record was last modified

Typestring
Example1695766710
socOnly

Returns only event groups that would result in a SOC for a patient. This includes: Treatment and Vaccine Event Groups that have a valid event group association.

Typeboolean
Exampletrue

Responses​

Returns a list of event groups.

application/json
JSON
{
"meta": {
"timestamp": 1695766710,
"items_page": 1,
"items_page_total": 191,
"items_page_size": 1,
"items_total": 29,
"transaction_id": "c780c14f01293932e1d1f16db7bfe017a6f02eb6e33bb6dc13944fe07cb6a85c"
},
"items": [
{
"eventgroup": {
"id": "1",
"active": "true",
"created_at": "1307487862",
"modified_at": "1363044343",
"uid": "socGroup_yR3VokRf1OvtHWoqTrpCp",
"name": "Equine Herpes Virus",
"importance": "Core",
"type": "Vaccine"
}
}
],
"messages": [
[
]
]
}

Samples​

cURL
JavaScript
PHP
Python

Standard of Care​


Get standard of care events​

GET
/v2/standardofcare

Gets standard of care events

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

limit

Sets the number of items to be returned on each page. Min: 1, Max: 5000

Typeinteger
Example5000
page
Typeinteger
Example1
modified_at

The epoch time when the record was last modified

Typestring
Example1695766710

Responses​

Returns a list of SOC events.

application/json
JSON
{
"meta": {
"timestamp": 1695766710,
"items_page": 1,
"items_page_total": 191,
"items_page_size": 1,
"items_total": 29,
"transaction_id": "c780c14f01293932e1d1f16db7bfe017a6f02eb6e33bb6dc13944fe07cb6a85c"
},
"items": [
{
"standardofcare": {
"id": 12,
"uid": "standardOfCare_jt3AXwOC6fa6QcwxAw3pE",
"deleted_at": 1620232140,
"due_at": 1620234360,
"last_fulfilled_at": 1620232140,
"animal_id": 2604,
"animal_uid": "animal_B4vrE744DdwUXqFxHntAY",
"soc_group_id": 235,
"soc_group_uid": "socGroup_h3MWcVA6E3LIdMOJRDCNB",
"soc_group_name": "Yearly Dental Checkup",
"soc_group_type": "Treatment",
"ownership_id": 3,
"ownership_uid": "ownershipSeparation_cAl0DAnmH0C1EqVw0souz",
"calculated_at": 1673831655,
"created_at": 1673831655,
"modified_at": 1673831655
}
}
],
"messages": [
[
]
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing inventory records, including products, purchase orders, and inventory levels

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Barcode​


Fetch a list of Barcodes​

GET
/v1/barcode

Fetches a list containing Barcodes (up to 10).

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Barcode.

Typenumber
created_at

The epoch time when the Barcode was created.

Typenumber
modified_at

The epoch time when the Barcode was last modified.

Typenumber
for_type

The type of record that the Barcode is for. EG: 'product'.

Typestring
for_id

The ID of the record that the Barcode is for.

Typenumber
active

If true, the Barcode is active and usable in ezyVet.

Typeboolean
defaulttrue
format

The format or standard of the system used Barcode. EG: 'EAN-13', or 'CODE128'.

Typestring
barcode

The text content for the Barcode.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"barcode": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"for_type": "string",
"for_id": "string",
"format": "string",
"barcode": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Product​


Fetch a Product list​

GET
/v1/product

Fetches a list containing Product(s). (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Product.

Typestring
active

If true, the Product is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Product was created.

Typestring
modified_at

The epoch time when the Product was last modified.

Typestring
code

String generally used by clinic staff members to identify Products.

Typestring
questions

Complex inquiries about the Product. Refer to the Questions table.

Typestring
name

Name of the Product as it is visible on ezyVet.

Typestring
product_group_id

The ID of the ProductGroup where the Product is assigned. Every Product requires a ProductGroup. This shows up as the "Primary Product Group" on the Product screen.

Typestring
description

The description of the Product.

Typestring
warning

This is where clinic staff can write warning messages regarding the Product, such as "For external use only".

Typestring
type

Specifies the Product type, and where it can be used: Standard, Medication, Vaccination, Diagnostic, Integrated Diagnostic, Procedure

Typestring
Enum
"Standard""Medication""Vaccination""Diagnostic""Integrated Diagnostic""Procedure"
default"Standard"
is_sold

If true, the Product can be sold.

Typestring
is_purchased

If true, the Product can be bought.

Typestring
is_container

If true, the Product acts as a container for other Product(s).

Typestring
is_derived_price

If true, the price is derived from all the Product(s) contained.

Typestring
has_direct_cost

If true, the Product has the "has direct cost" checkmark set and can use markup.

Typestring
product_identifier

For the US, this is the 11 digit NDC or product ID for compounds.

Typestring
product_schedule_or_class

This is the controlled substances for controlled drugs. For the US, this value is in roman numerals, Eg. II, III, IV,V.

Typestring
limit

Limits the number of results returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of products with stock levels

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"product": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"code": "string",
"product_group_id": "string",
"description": "string",
"warning": "string",
"is_sold": "string",
"is_purchased": "string",
"is_container": "string",
"product_identifier": "string",
"product_schedule_or_class": "string",
"is_derived_price": "string",
"has_direct_cost": "string",
"type": "string",
"_answers": {
"stocklevel": {
"in_stock": "string",
"allocated": "string",
"available": "string",
"on_order_for_inventory": "string",
"on_order_total": "string",
"being_receipted": "string",
"inventory_turn": "string"
}
}
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Product Group​


Fetch a ProductGroup list​

GET
/v1/productgroup

Fetches a list containing ProductGroup(s). (up to 10)

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ProductGroup.

Typestring
active

If true, the ProductGroup is active and usable in ezyVet.

Typestring
created_at

The epoch time when the ProductGroup was created.

Typestring
modified_at

The epoch time when the ProductGroup was last modified.

Typestring
name

The name of the ProductGroup.

Typestring
description

The description of the ProductGroup.

Typestring
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of ProductGroups

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"productgroup": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"description": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Purchase Order​


Fetch a PurchaseOrder list​

GET
/v1/purchaseorder

Fetches a list containing PurchaseOrder(s). (up to 10)

Parameters​

Query Parameters

client_id*

The ID of the client linked to the PurchaseOrder.

Typenumber
Required
id

The ID number used by the system to uniquely identify a PurchaseOrder.

active

If true, the PurchaseOrder is active and usable in ezyVet.

created_at

The epoch time when the PurchaseOrder was created.

modified_at

The epoch time when the PurchaseOrder was last modified.

date

The epoch time of the PurchaseOrder transaction date.

shipping_address_id

The ID of the shipping Address for the order.

comments

Any comments left by the User placing the order.

Typestring
freight

The total monetary cost of the freight (inc tax).

freight_tax

The total tax content in the freight amount.

tax

The total tax content of the PurchaseOrder.

total

The total monetary amount of the PurchaseOrder. This value can be negative, indicating its a return of items. This value is tax inclusive.

supplier_id

The ID of the supplier to whom the order is sent.

status

The status of the PurchaseOrder. Can only be one of the following: Created, Approved, Sent, Confirmed, Partial, Received, Completed or Cancelled.

Typestring
supplier_order_number

A number assigned by the supplier once an order is placed.

supplier_account_number

A string assigned on the supplier to identify the account the order is made from.

ownership_id

The ID of the Ownership Separation to which this PurchaseOrder belongs.

Responses​

A list of PurchaseOrders

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"purchaseorder": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"date": "string",
"shipping_address_id": "string",
"comments": "string",
"freight": "string",
"freight_tax": "string",
"tax": "string",
"total": "string",
"client_id": "string",
"supplier_id": "string",
"status": "string",
"supplier_order_number": "string",
"supplier_account_number": "string",
"ownership_id": "string",
"purchase_order_item_list": [
0
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Purchase Order Item​


Fetches a list containing PurchaseOrderItem(s)​

GET
/v1/purchaseorderitem

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a PurchaseOrderItem.

Typestring
active

If true, the PurchaseOrderItem is active and usable in ezyVet.

Typestring
created_at

The epoch time when the PurchaseOrderItem was created.

Typestring
modified_at

The epoch time when the PurchaseOrderItem was last modified.

Typestring
purchase_order_id

The ID of the PurchaseOrder to which this PurchaseOrderItem is linked.

Typestring
product_id

The ID of the product on the PurchaseOrderItem.

Typestring
supplier_code

The code of the product in the supplier's records.

Typestring
outers

The number of outers being ordered for the given product.

Typestring
units_per_outer

The number of units of the product included in one outer.

Typestring
price_per_unit

The price of one unit in an outer.

Typestring
tax_per_unit

The tax content per unit.

Typestring
quantity

The number of units being ordered for the given product.

Typestring
total

The total monetary amount of the PurchaseOrderItem excluding tax.

Typestring
total_tax

The total tax content of the PurchaseOrderItem.

Typestring
ownership_id

The ID of the Ownership Separation to which this PurchaseOrderItem belongs.

Typestring

Responses​

A list of PurchaseOrderItems

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"purchaseorderitem": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"purchase_order_id": "string",
"product_id": "string",
"supplier_code": "string",
"outers": "string",
"units_per_outer": "string",
"price_per_unit": "string",
"tax_per_unit": "string",
"quantity": "string",
"total": "string",
"total_tax": "string",
"ownership_id": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a list of Receive Invoices​

GET
/v1/receiveinvoice

Gets a ReceiveInvoice and any included ReceiveInvoiceItems
It's recommended to use the v2/receiveinvoice endpoint

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ReceiveInvoice.

Typestring
active

If true, the ReceiveInvoice is active and usable in ezyVet.

Typestring
created_at

The epoch time when the ReceiveInvoice was created.

Typestring
modified_at

The epoch time when the ReceiveInvoice was last modified.

Typestring
invoice_number

The value given by a Supplier to track the invoice on their end.

Typestring
date

The epoch time of the ReceiveInvoice transaction date.

Typestring
due_date

The due date of the ReceiveInvoice in epoch time.

Typestring
supplier_id

The ID of the Supplier who sent the ReceiveInvoice.

Typestring
freight

The total monetary cost of the freight (inc tax).

Typestring
freight_tax

The total tax content in the freight amount.

Typestring
comments

Any comments.

Typestring
tax

The total tax content of the ReceiveInvoice.

Typestring
total

The total monetary amount of the ReceiveInvoice. This value is tax inclusive.

Typestring
ownership_id

The ID of the Ownership Separation to which this ReceiveInvoice belongs.

Typestring

Responses​

A list of Receive Invoices

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"receiveinvoice": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"invoice_number": "string",
"date": "string",
"due_date": "string",
"supplier_id": "string",
"freight": "string",
"freight_tax": "string",
"comments": "string",
"tax": "string",
"total": "string",
"purchase_order_list": [
"string"
],
"receive_invoice_item_list": [
"string"
],
"ownership_id": "string"
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a list of Receive Invoice Items​

GET
/v1/receiveinvoiceitem

Fetches a list containing ReceiveInvoiceItem(s). (up to 10)

Parameters​

Query Parameters

product_id

The product ID used by the system to uniquely identify a ReceiveInvoiceItem.

Typestring

Responses​

A list of Receive Invoice Items

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"stockadjustment_id": 0,
"product_id": 0,
"name": "string",
"code": "string",
"quantity": 0,
"price": 0,
"ledger_account": 0,
"status": "string",
"batch": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
],
"location_id": 0
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Batch​


Fetch a list of Batches​

GET
/v2/batch

Fetches a list containing Batches (up to 10)

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Batch.

Typenumber
uid

The ID number used by the system to uniquely identify an Batch across all ezyVet sites.

Typestring
created_at

The epoch time when the Batch was created.

Typenumber
modified_at

The epoch time when the Batch was last modified.

Typenumber
active

If true, the Batch is active and usable in ezyVet.

Typeboolean
defaulttrue
name

The name given for a Batch.

Typestring
type

The type of Batch.

Typestring

Responses​

A list of Batches

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"batch": {
"id": 0,
"uid": "string",
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Product V2​


Fetch a Specific Product​

GET
/v2/product/{product_id}

Parameters​

Header Parameters

authorization*

Bearer token for authentication

Typestring
Required

Path Parameters

product_id*

The ID number used by the system to uniquely identify a Product.

Typenumber
Required

Responses​

A specific product by its id.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"product": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"code": "string",
"description": "string",
"type": "string",
"tracking_level": "string",
"product_group_id": 0,
"warning": "string",
"is_sold": true,
"is_purchased": true,
"is_container": true,
"is_derived_price": true,
"has_cost_price": true,
"lowest_dispensable_quantity": 0,
"lowest_dispensable_unit": "string",
"concentration": 0,
"concentration_unit": "string",
"concentration_volume": "string",
"concentration_diluted": 0,
"concentration_diluted_unit": "string",
"concentration_diluted_volume": "string",
"default_dosage_calculation_method": "string",
"is_constant_rate_infusion": true,
"default_infusion_rate_per": "string",
"default_route_of_administration": "string",
"sheet_group": 0,
"sheet_group_name": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Product Minimum Stock​


Fetches Product Minimum Stock​

GET
/v2/productminimumstock

Fetches a list containing ProductMinimumStock(s).

Parameters​

Query Parameters

product_id*

The ID of the Product this ProductMinimumStock this relates to.

Typenumber
Required

Responses​

Successful response

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"productminimumstock": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"product_id": 0,
"minimumstock": 0,
"re_order_to_max_level": true,
"re_order_qty": "string",
"start_day": 0,
"start_month": 0,
"end_day": 0,
"end_month": 0,
"ownership_id": 0
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Create a Product Pricing​

POST
/v2/productpricing

Creates a new Product Pricing for the provided Product and Ownership Separation.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

application/json
JSON
{
"product_id": 0,
"ownership_id": 0,
"based_on": "string",
"tax_rate": 0,
"cost_price": 0,
"sell_price": 0
}

Responses​

A JSON object containing the created Product Pricing

application/json
JSON
{
"meta": {
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"productpricing": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"cost_price": 0,
"based_on": "string",
"markup": 0,
"sell_price": 0,
"sell_price_tax": 0,
"tax_rate": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"code": "string",
"rate": 0
},
"dispense_fee": 0,
"product_id": 0,
"ownership_id": 0
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Product Supplier​


Fetch Product Suppliers​

GET
/v2/productsupplier

This will fetch a list of product suppliers based on the query parameters supplied.

Parameters​

Query Parameters

product_id

The ID of the product to filter by.

Typenumber
supplier_contact_id

The ID of the supplier contact to filter by.

Typenumber

Responses​

A list of product suppliers.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"productsupplier": {
"id": 0,
"created_at": "string",
"modified_at": 0,
"active": true,
"product_id": 0,
"supplier_code": "string",
"expected_price": 0,
"units_per_outer": 0,
"supplier_contact_id": 0,
"tax_rate_id": 0,
"list_price": 0,
"is_default": true,
"unit_of_measure": "string",
"last_update": 0,
"contract_price": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Receive Invoice V2​


Fetches a list containing Receive Invoices (up to 10), and their associated Receive Invoice Items.​

GET
/v2/receiveinvoice

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ReceiveInvoice.

Typenumber
active

If true, the ReceiveInvoice is active and usable in ezyVet.

Typeboolean
defaulttrue
created_at

The epoch time when the ReceiveInvoice was created.

Typenumber
modified_at

The epoch time when the ReceiveInvoice was last modified.

Typenumber
invoice_number

The value given by a Supplier to track the invoice on their end.

Typestring
date

The epoch time of the ReceiveInvoice transaction date.

Typenumber
due_date

The due date of the ReceiveInvoice in epoch time.

Typenumber
supplier_id

The ID of the Supplier who sent the ReceiveInvoice.

Typenumber
ownership_id

The ID of the OwnershipSeparation to which this ReceiveInvoice belongs.

Typenumber

Responses​

A list of Receive Invoices and their associated Receive Invoice Items.

application/json
JSON
{
"meta": {
"timestamp": 0,
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0
},
"items": [
{
"receiveinvoice": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"invoice_number": "string",
"date": 0,
"due_date": 0,
"supplier_id": 0,
"freight": 0,
"freight_tax": 0,
"rounding": 0,
"comments": "",
"tax": 0,
"total": 0,
"ownership_id": 0,
"line_item": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"quantity": 0,
"price": 0,
"tax": 0,
"total": 0,
"total_tax": 0,
"tax_rate": 0,
"tax_code": "string",
"product_id": 0,
"product_supplier_id": 0,
"supplier_code": "string",
"ownership_id": 0,
"batch": [
],
"purchase_order_item_id": 0
}
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Receive Invoice Item V2​


Fetches a list containing ReceiveInvoiceItems​

GET
/v2/receiveinvoiceitem

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a ReceiveInvoiceItem.

Typenumber
created_at

The epoch time when the ReceiveInvoiceItem was created.

Typenumber
modified_at

The epoch time when the ReceiveInvoiceItem was last modified.

Typenumber
active

If true, the ReceiveInvoiceItem is active and usable in ezyVet.

Typeboolean
defaulttrue
receive_invoice_id

The ID of the ReceiveInvoice the ReceiveInvoiceItem is linked to.

Typestring
quantity

The quantity of Product invoiced. Depending on the configuration set by the Supplier, this value may represent the quantity of Outers or the quantity of Units.

Typenumber
price

The price of one selling unit. Depending on the configuration set by the Supplier, this value may represent the price of one Outer or the price of one Unit.

Typenumber
tax

The tax content per selling unit. Depending on the configuration set by the Supplier, this value may represent the tax amount from one Outer or one Unit.

Typenumber
default0
total

The total monetary amount of the ReceiveInvoiceItem excluding tax.

Typenumber
default0
total_tax

The total tax content of the ReceiveInvoiceItem.

Typenumber
tax_rate

The tax rate applied to the ReceiveInvoiceItem.

Typenumber
tax_code

The tax code relating to the tax rate on the ReceiveInvoiceItem.

Typestring
product_id

The ID of the Product on the ReceiveInvoiceItem.

Typenumber
product_supplier_id

The ID of the ProductSupplier on the ReceiveInvoiceItem.

Typenumber
supplier_code

The code of the Product in the Supplier's records. (i.e. the code given to the product by the supplier)

Typestring
location_id

The ID of the LocationSeparation to which this ReceiveInvoiceItem belongs.

Typenumber

Responses​

A list of ReceiveInvoiceItems

application/json
JSON
{
"meta": {
"timestamp": 0,
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0
},
"items": [
{
"receiveinvoiceitem": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"receive_invoice_id": "string",
"quantity": 0,
"price": 0,
"tax": 0,
"total": 0,
"total_tax": 0,
"tax_rate": 0,
"tax_code": "string",
"product_id": 0,
"product_supplier_id": 0,
"supplier_code": "string",
"ownership_id": 0,
"batch": [
],
"purchase_order_item_id": 0
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Create a StockAdjustment​

POST
/v2/stockadjustment

Adjust stock levels for a product
It's recommended to use the inventory/v1/supplied endpoint.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

application/json
JSON
{
"date": 0,
"comments": "",
"line_item": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"stockadjustment_id": 0,
"product_id": 0,
"name": "string",
"code": "string",
"quantity": 0,
"price": 0,
"ledger_account": 0,
"status": "string",
"batch": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
],
"location_id": 0
}
],
"ownership_id": 0
}

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": 0
},
"items": [
{
"stockadjustment": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"date": 0,
"amount": 0,
"comments": "",
"line_item": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"stockadjustment_id": 0,
"product_id": 0,
"name": "string",
"code": "string",
"quantity": 0,
"price": 0,
"ledger_account": 0,
"status": "string",
"batch": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
],
"location_id": 0
}
],
"ownership_id": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Creates a single StockAdjustmentItem​

POST
/v2/stockadjustmentitem

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

application/json
JSON
{
"stockadjustment_id": 0,
"product_id": 0,
"quantity": 0,
"price": 0,
"ledger_account": 0,
"batch": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
],
"location_id": 0
}

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": 0
},
"items": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"stockadjustment_id": 0,
"product_id": 0,
"name": "string",
"code": "string",
"quantity": 0,
"price": 0,
"ledger_account": 0,
"status": "string",
"batch": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
],
"location_id": 0
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Stock Transaction​


Fetch stock transactions​

GET
/v2/stocktransaction

Fetches a list of StockTransaction records.

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a StockTransaction.

Typestring
active

If true, the StockTransaction is active and usable in ezyVet.

Typeboolean
created_at

The epoch time when the StockTransaction was created.

Typestring
modified_at

The epoch time when the StockTransaction was last modified.

Typestring
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of StockTransaction records.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"stocktransaction": {
"id": "string",
"created_at": "string",
"modified_at": "string",
"active": true,
"quantity": "string",
"alter_stock": true,
"separation_id": "string",
"for_id": "string",
"for_class": "string",
"product_id": "string",
"status": "string",
"date": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Inventory Tracked Products​


Get inventory tracked products​

GET
/inventory/v1/products

Returns all inventory tracked products as well as details pertaining to the measurement systems of the product

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Responses​

Gets inventory tracked products

application/json
JSON
{
"data": [
{
"id": "product_CnDsVPsM4Aq81Px7AHPzn",
"name": "Diazepam",
"code": "DZP456",
"unitType": "mg",
"unitCount": 10,
"batchTracked": true
}
],
"meta": [
[
]
]
}

Samples​

cURL
JavaScript
PHP
Python

Inventory Requirements​


Get inventory balance and requirements​

GET
/inventory/v1/requirements

Returns the current state of products at an inventory location

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

locationUID*

The UID of the inventory location

Typestring
Required
format"uid"

Responses​

Gets products with their inventory balance and requirements

application/json
JSON
{
"data": [
{
"productId": "product_CnDsVPsM4Aq81Px7AHPzn",
"product": "Diazepam",
"code": "DZP456",
"available": 2,
"minimum": 3,
"required": 5
}
],
"meta": [
[
]
]
}

Samples​

cURL
JavaScript
PHP
Python

Supplied Inventory​


Supply products to a location​

POST
/inventory/v1/supplied

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

locationUID*

The UID of the location that the products are supplied to

Typestring
Required
Example"ownershipSeparation_9K8oZgeaLT0AEctz3KtwC"

Request Body​

application/json
JSON
[
{
"productId": "product_MZcxwWMf9lprsWC8MH2OF",
"supplied": 5,
"batch": {
"code": "777-3321",
"expireAt": "2024-01-23"
}
}
]

Responses​

Successful response

application/json
JSON
{
"data": [
{
"productId": "product_MZcxwWMf9lprsWC8MH2OF",
"supplied": 5,
"batch": {
"code": "777-3321",
"expireAt": "2024-01-23"
}
}
],
"meta": {
"timestamp": 1731883188,
"currentPage": 1,
"links": [
{
"url": ".../api/v1/inventory/...?page=1",
"label": "first"
}
],
"path": ".../api/v1/inventory/...",
"perPage": 10000
}
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing prescriptions.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Post an external prescription​

POST
/v1/externalprescription

Create a new external prescription record.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

application/json
JSON
{
"animal_id": 0,
"consult_id": 0,
"contact_id": 0,
"prescribing_vet_user_id": 0,
"date_of_prescription": 0,
"date_of_lastdispense": 0,
"external_reference": "string",
"total_price": 0,
"external_prescription_item_list": [
{
"external_product_name": "string",
"external_product_reference": "string",
"external_link": "string",
"instructions": "string",
"price": 0,
"qty": 0,
"remaining": 0
}
]
}

Responses​

Success

application/json
JSON
{
"meta": {
"transaction_id": "string",
"timestamp": "string"
},
"items": [
],
"messages": [
{
"level": "string",
"type": "string",
"text": "string",
"fields": {
"prescription_uid": "string"
}
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a list of Prescriptions​

GET
/v1/prescription

Fetches a list containing Prescriptions (up to 10).

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Prescription.

Typestring
active

If true, the Prescription is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Prescription was created.

Typestring
modified_at

The epoch time when the Prescription was last modified.

Typestring
animal_id

The name of the Animal to which the Prescription was issued.

Typestring
consult_id

The name of the Consult to which the Prescription was issued.

Typestring
prescribing_vet_user

The name of the User (a vet) who issued the Prescription.

Typestring
date_of_prescription

The epoch time when the Prescription was issued. This is not necessarily when the Prescription record was created.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"prescription": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"animal_id": "string",
"consult_id": "string",
"prescribing_vet_user_id": "string",
"date_of_prescription": "string",
"prescription_item_list": [
0
]
}
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetches a list of PrescriptionItems​

GET
/v1/prescriptionitem

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an PrescriptionItem.

Typestring
active

If true, the PrescriptionItem is active and usable in ezyVet.

Typestring
created_at

The epoch time when the PrescriptionItem was created.

Typestring
modified_at

The epoch time when the PrescriptionItem was last modified.

Typestring
prescription_id

Refers to the ID of the Prescription to which the PrescriptionItem belongs.

Typestring
product_id

Refers to the ID of the Product added to the Prescription as a PrescriptionItem.

Typestring
qty

The amount of the PrescriptionItem prescribed.

Typestring
remaining

The amount of the PrescriptionItem remaining from the prescription.

Typestring
instructions

Instructions on how to use the PrescriptionItem.

Typestring
date_start

The epoch time when the PrescriptionItem must start being taken.

Typestring
serial_number

The serial number for PrescriptionItem.

Typestring

Responses​

A list of PrescriptionItems with meta information.

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"prescriptionitem": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"prescription_id": "string",
"product_id": "string",
"qty": "string",
"remaining": "string",
"instructions": "string",
"date_start": "string",
"serial_number": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Therapeutic​


Fetch a Therapeutic list​

GET
/v1/therapeutic

Fetches a list containing Therapeutic(s). (up to 10)

Parameters​

Query Parameters

id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
name
Typestring
default_template_id
Typestring
default0
department_ids
Typearray

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"therapeutic": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"default_template_id": "string",
"department_ids": [
"string"
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for system administration

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Fetch an Attachment​

GET
/v1/attachment

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify an Attachment.

Typestring
active

If true, the Attachment is active and usable in ezyVet.

Typeboolean
created_at

The epoch time when the Attachment was created.

Typestring
modified_at

The epoch time when the Attachment was last modified.

Typestring
file_id

The ID number of the File linked to the Attachment.

Typestring
file_download_url

The URL of the file that if you get request will download the file.

Typestring
record_type

The record type the Attachment is for. E.g. Animal, Contact, Consult.

Typestring
record_id

The ID number of the record the Attachment is linked to.

Typestring
mime_type

Multipurpose Internet Mail Extension type. Identifies the format of the Attachment.

Typestring
name

The Attachment filename.

Typestring
primary_image

If true, the Attachment is the primary image for the linked record.

Typeboolean
notes

Notes that are related to the Attachment.

Typestring

Responses​

A successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"attachment": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"file_id": "string",
"file_download_url": "string",
"record_type": "string",
"record_id": "string",
"mime_type": "string",
"name": "string",
"primary_image": "string",
"notes": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Create a File​

POST
/v1/file

Creates a single File.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Request Body​

multipart/form-data
object
Format"binary"

Responses​

Successful operation

application/json
JSON
{
"meta": {
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"file": {
"id": "string",
"active": true,
"created_at": "string",
"modified_at": "string",
"name": "string",
"size": "string",
"mime_type": "string",
"notes": "string",
"file_download_url": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Separation​


Deprecated

Fetch a list of separations​

GET
/v1/separation

Its recommended to use the v2/separation endpoint

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Separation.

Typestring
active

If true, the Separation is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Separation was created.

Typestring
modified_at

The epoch time when the Separation was last modified.

Typestring
name

The name of the Separation.

Typestring
type

The type of Separation: Database, Business, Division or Location.

Typestring
Enum
"Database""Business""Division""Location"
parent

The ID of the parent Separation. Note, a Database has no parent.

Typestring
contact_id

The ID of the Contact containing business details for this Separation.

Typestring

Responses​

A list of separations

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"stockadjustment_id": 0,
"product_id": 0,
"name": "string",
"code": "string",
"quantity": 0,
"price": 0,
"ledger_account": 0,
"status": "string",
"batch": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"expiry": 0
}
],
"location_id": 0
}
],
"messages": [
"string"
]
}

Samples​

cURL
JavaScript
PHP
Python

System Settings​


Get the SystemSettings​

GET
/v1/systemsetting

Returns the SystemSetting of the specified site.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Responses​

Successful response

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"systemsetting": {
"timezone": {
"name": "string",
"utc_offset": "string",
"utc_offset_seconds": 0
}
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Tag​


Fetch a list of Tags​

GET
/v1/tag

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Tag.

Typestring
active

If true, the Tag is active and usable in ezyVet.

Typestring
created_at

The epoch time when the Tag was created.

Typestring
modified_at

The epoch time when the Tag was last modified.

Typestring
name

The name of the Tag.

Typestring
associated_id

The ID of the record to which this Tag is associated.

Typestring
associated_type

The name of the entity object to which this Tag is associated.

Typestring
category_id

The ID of the TagCategory to which this Tag belongs.

Typestring

Responses​

A list of Tags

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"tag": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"associated_id": "string",
"associated_type": "string",
"category_id": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Tag Category​


Fetch a list of Tag Categories​

GET
/v1/tagcategory

Parameters​

Query Parameters

id
Typestring
active
Typestring
created_at
Typestring
modified_at
Typestring
name
Typestring

Responses​

A list of Tag Categories

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"tagcategory": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Tag Name​


Fetches a list containing Tag Names​

GET
/v1/tagname

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Tag Name.

Typestring
created_at

The epoch time when the Tag Name was created.

Typestring
modified_at

The epoch time when the Tag Name was last modified.

Typestring
active

If true, the Tag Name is active and usable in ezyVet.

Typestring
category_id

The ID of the Tag Category the Tag Name is part of.

Typestring

Responses​

A list of Tag Names

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"tagname": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"name": "string",
"category_id": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

User​


Fetch a list of ezyVet users​

GET
/v1/user

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a User.

Typestring
active

If true, the User is active and usable in ezyVet.

Typestring
created_at

The epoch time when the User was created.

Typestring
modified_at

The epoch time when the User was last modified.

Typestring
name

The name of the User.

Typestring
code

The code of the User.

Typestring
is_vet

If true, the User is a vet.

Typestring
is_salesperson

If true, the User is a salesperson.

Typestring
limit

Limits the number of items returned.

Typestring
default10
page

Specifies the page number of the result.

Typestring
default1

Responses​

A list of Users

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"user": {
"id": "string",
"active": "string",
"created_at": 0,
"modified_at": 0,
"name": "string",
"code": "string",
"is_vet": "string",
"is_salesperson": "string"
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Webhook Events​


Fetch a list of WebHookEvents​

GET
/v1/webhookevents

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Responses​

A JSON object containing the list of WebHookEvents.

application/json
JSON
{
"meta": {
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"webhookevents": [
"appointment_created",
"appointment_updated",
"product_created",
"product_updated",
"user_created",
"user_updated",
"consult_created",
"consult_updated",
"therapeutic_created",
"therapeutic_updated",
"therapeutic_disabled",
"default_billing_trigger_created",
"default_billing_trigger_updated",
"default_billing_trigger_disabled",
"bundle_created",
"bundle_updated",
"bundle_disabled"
]
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a list of WebHooks​

GET
/v1/webhooks

Fetch a WebHook.

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a WebHook.

Typenumber
active

If true, the WebHook is active and will cause the webhook_url to receive data upon events being fired.

Typeboolean
event

The name of the subscribed event. Each event is prefixed with a data type (endpoint) followed by the name of the event associated to that data type.

Typestring

Responses​

Successful response

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"webhooks": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"webhook_url": "string",
"event": "string",
"fields": [
"string"
]
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch a Separation list​

GET
/v2/separation

Fetches a list containing Separations.
Separations are a complex part of the ezyVet API and is important to understand.
Please read this document to ensure you have an adequate understanding.

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Separation.

Typenumber
uid

The ID number used by the system to uniquely identify a Separation across all ezyVet sites.

Typestring
active

If true, the Separation is active and usable in ezyVet.

Typeboolean
created_at

The epoch time when the Separation was created.

Typenumber
modified_at

The epoch time when the Separation was last modified.

Typenumber

Responses​

A list of separations

application/json
JSON
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"separation": {
"id": 0,
"uid": "ownershipSeparation_d01oHZu5uCuy0VdOgAn23",
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"type": "string",
"parent": 0,
"child": 0,
"separation_type": "string",
"contact_id": 0,
"contact_uid": "string"
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Site Information​


Get site information​

GET
/v3/siteInformation

Gets site information pertaining to the site specified in the request URL.

Responses​

OK

application/json
JSON
{
"data": {
"id": "site_jkjBWPng4gFTqRxYkomWU",
"type": "siteInformation",
"attributes": {
"prefix": "apisandbox",
"practiceType": "Mixed Practice",
"version": 40.1
},
"relationships": {
"timezone": {
"links": {
"related": 94
},
"data": {
"type": "timezone",
"id": 94
}
}
},
"included": [
{
"id": 94,
"type": "timezone",
"attributes": {
"name": "America/Chicago"
}
}
]
}
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI

This portion of the API provides endpoints for managing wellness plans and benefits.

Servers​

https://api.ezyvet.comezyVet production environment
https://api.trial.ezyvet.comezyVet trial environment

Fetches a list of Wellness Plans​

GET
/v2/wellnessplan

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Wellness Plan.

Typenumber
created_at

The epoch time when the Wellness Plan was created.

Typenumber
modified_at

The epoch time when the Wellness Plan was last modified.

Typenumber
active

If true, the Wellness Plan is active and usable in ezyVet.

Typeboolean
name

The name of the Wellness Plan.

Typestring

Responses​

A list of Wellness Plans

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"wellnessplan": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"subscription_cycle_unit": "string",
"subscription_cycle_qty": 0,
"subscription_fee_product": 0,
"fixed_subscription_price": 0,
"min_cycle_qty_on_signup": 0,
"term_qty": 0,
"pause_limit_qty": 0,
"extends_end_date": true,
"portion_revenue_payable": "string",
"enrollment_fee_product": 0,
"replacement_wellness_plan": 0,
"discontinued": true,
"cancellation_product": 0,
"default_renew": true,
"renewal_fee_product": 0,
"ownership_id": 0
}
}
],
"messages": [
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetch Wellness Plan Benefit​

GET
/v2/wellnessplanbenefit

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Wellness Plan Benefit.

Typenumber
created_at

The epoch time when the Wellness Plan Benefit was created.

Typenumber
modified_at

The epoch time when the Wellness Plan Benefit was last modified.

Typenumber
active

If true, the Wellness Plan Benefit is active and usable in ezyVet.

Typeboolean
wellnessplan_id

The ID of the Wellness Plan that the Wellness Plan Benefit is associated with.

Typenumber

Responses​

A list containing Wellness Plan Benefits.

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"wellnessplanbenefit": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"earn_method": "string",
"earn_amount": 0,
"optional": true,
"benefit_type": "string",
"benefit_config": {
"type": "string",
"allocation": "string",
"type_value": 0,
"usages": 0,
"renewable": true,
"option_cost_exc_tax": 0,
"refresh_cycle_quantity": 0
},
"wellnessplan_id": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Wellness Plan Benefit Item​


Fetches a list of Wellness Plan Benefit Items​

GET
/v2/wellnessplanbenefititem

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

wellness_plan_benefit*

The ID of the Wellness Plan Benefit the Wellness Plan Benefit Item is associated with.

Typenumber
Required
id

The ID number used by the system to uniquely identify a Wellness Plan Benefit Item.

Typenumber
created_at

The epoch time when the Wellness Plan Benefit Item was created.

Typenumber
modified_at

The epoch time when the Wellness Plan Benefit Item was last modified.

Typenumber
active

If true, the Wellness Plan Benefit Item is active and usable in ezyVet.

Typeboolean

Responses​

A list of Wellness Plan Benefit Items

application/json
JSON
{
"meta": {
"timestamp": 0,
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0
},
"items": [
{
"wellnessplanbenefititem": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"wellness_plan_benefit": 0,
"associated_type": "string",
"associated_id": 0,
"earn_method": "string",
"earn_amount": 0,
"consumption_rate": 0,
"consumption_rate_fixed": true
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Fetches a list containing Wellness Plan Memberships​

GET
/v2/wellnessplanmembership

Authorizations​

bearerAuth
clientCredentials Flow
Token URL"https://apiv2.ezyvet.com/oauth/token"
Scopes:

Parameters​

Query Parameters

id

The ID number used by the system to uniquely identify a Wellness Plan Membership.

Typenumber
created_at

The epoch time when the Wellness Plan Membership was created.

Typenumber
modified_at

The epoch time when the Wellness Plan Membership was last modified.

Typenumber
active

If true, the Wellness Plan Membership is active and usable in ezyVet.

Typeboolean
wellness_plan

The ID of the Wellness Plan this Wellness Plan Membership is associated with.

Typenumber
animal_id

The ID of the Animal that is enrolled to this Wellness Plan Membership.

Typenumber
resource_id

The ID of the Resource that enrolled the Animal into this Wellness Plan Membership.

Typenumber

Responses​

A list of Wellness Plan Memberships

application/json
JSON
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"wellnessplanmembership": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"wellness_plan": 0,
"animal_id": 0,
"renew_when_expired": true,
"start_date": 0,
"end_date": 0,
"status": "string",
"billing_interval": 0,
"resource_id": 0,
"previous_wellness_plan_membership": 0,
"next_wellness_plan": 0,
"reference": "string",
"ownership_id": 0
}
}
],
"messages": [
{
}
]
}

Samples​

cURL
JavaScript
PHP
Python

Powered by VitePress OpenAPI