Search K
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 ​
| Code | Name | Description |
|---|---|---|
| 400 | Bad Request | You have submitted an erroneous request. Check the URL, as well as all the input fields. |
| 401 | Unauthorized | Your request is not allowed. Check if your access token or client credential is valid. |
| 403 | Forbidden | The endpoint requested is either not allowed for you, or does not exist at all. |
| 405 | Method Not Allowed | The endpoint exists, but the HTTP method is not supported for it. |
| 422 | Unprocessable Entity | Your request itself is correct, but it fails one or more of our validation checks. Please see the error message in the response for details. |
| 500 | Internal Server Error | Oops, something's wrong on our end. 😦 Please check back later. |
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.
| meta | Description |
|---|---|
items_page | Current page of the result. On requests, you can pass page to specify the page to be returned. (Default: 1) |
items_page_total | Total number of pages that the same request will return. |
items_page_size | Number of items per page. |
items_total | Total 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: api.trial.ezyvet.com
Authorization: Bearer tokenRequest 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.
| Header | Description |
|---|---|
| x-ratelimit-limit | The maximum number of requests that can be made within the current throttling period. |
| x-ratelimit-remaining | The 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-reset | The 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-page | The 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.
Fetch a JWT bearer token​
POST
/v1/oauth/access_token
Generates a valid access token, given client credentials. Access tokens have an 12-hour TTL.
Request Body​
application/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
{
"access_token": "string",
"token_type": "string",
"expires_in": 0
}
POST
/v1/oauth/access_token
Samples​
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
Fetches a list containing Address(es)​
GET
/v1/address
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
name
Type
string
street_1
Type
string
street_2
Type
string
suburb
Type
string
city
Type
string
region
Type
string
post_code
Type
string
state
Type
string
country_id
Type
string
longitude
Type
string
latitude
Type
string
Responses​
A list of Addresses
application/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": [
]
}
GET
/v1/address
Samples​
Get a Communication​
GET
/v2/communication
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
uid
The unique identifier of the communication
Type
string
Example
"communication_BPSHlXlBrdLKxqyVtEtcz"associated_type
The name of the record type the Communication is directed at. Examples are 'Contact', 'Animal', 'Consult'.
Type
string
associated_id
The ID of the record the Communication is directed at.
Type
number
content_format
The format of the content. This will be one of the following: SMS, PlainText, HTML.
Type
string
Valid values
"SMS""PlainText""HTML"status
The status of the Communication. This will be one of the following: Pending, Done, Sending, Failed.
Type
string
Valid values
"Pending""Done""Sending""Failed"communicating_type
The name of the record type the Communication is communicating. Examples are 'Contact', 'Animal', 'Consult'.
Type
string
communicating_id
The ID of the record the Communication is communicating.
Type
number
Responses​
A list of Communications
application/json
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"communication": {
"id": 0,
"uid": "string",
"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"
]
}
GET
/v2/communication
Samples​
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://api.ezyvet.com/v1/oauth/access_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.
Type
string
first_name
The Contact's first name.
Type
string
last_name
The Contact's last/family name.
Type
string
business_name
The Contact's business name, if it is a business.
Type
string
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.
Type
string
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).
Type
string
Valid values
"OK""WARNING""STOP"limit
Sets the limit on the number of items returned (range: 1 - 50).
Default
10page
Specifies the page number of the result.
Default
1date_of_birth
The date of birth of the primary contact.
Type
number
Default
0driver_license_number
The driver license number of the primary contact.
Type
string
Default
nulldriver_license_issuer
The issuer of the driver license of the primary contact.
Type
string
Default
nulldriver_license_expiry
The expiry date of the driver license of the primary contact.
Responses​
A list of Contacts.
application/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": [
]
}
GET
/v1/contact
Samples​
Contact Association​
Manages relationships or associations between contacts (e.g., owner and emergency contact).
Operations​
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.
Type
string
contact_id
The Contact to fetch the associated contact ids for
Type
string
Default
"61"active
If true, the ContactAssociation is active and usable in ezyVet.
Type
string
created_at
The epoch time when the ContactAssociation was created.
Type
string
modified_at
The epoch time when the ContactAssociation was last modified.
Type
string
limit
Limits the number of items returned.
Type
number
Default
10page
Specifies the page number of the result.
Type
number
Default
1Responses​
A list of ContactAssociations.
application/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"
]
}
GET
/v1/contactassociation
Samples​
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.
Type
string
active
If true, the ContactDetail is active and usable in ezyVet.
Type
boolean
Default
truecreated_at
The epoch time when the ContactDetail was created.
Type
string
modified_at
The epoch time when the ContactDetail was last modified.
Type
string
name
The name of the ContactDetail, such as "Home Phone" or "Business E-mail".
Type
string
value
The value of the ContactDetail, such as the number, or the email (depending on its ContactDetailType).
Type
string
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.
Type
string
contact_id
The ID of the Contact to whom this ContactDetail is assigned.
Type
string
contact_detail_type_id
The ID of the ContactDetailType of this ContactDetail.
Type
string
preferred
If true, this ContactDetail is a preferred contact method for the related Contact.
Type
boolean
Default
falsesubscription_groups
A list of subscription groups that this ContactDetail is subscribed to (General, Reminders, Accounts).
Type
array
Responses​
Successful response
application/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": [
]
}
GET
/v1/contactdetail
Samples​
Contact Detail Type​
Defines types of contact details (e.g., home phone, work email).
Operations​
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.
Type
string
Responses​
Successful response
application/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": [
]
}
GET
/v1/contactdetailtype
Samples​
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.
Type
string
active
If true, the Country is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Country was created.
Type
string
modified_at
The epoch time when the Country was last modified.
Type
string
name
The name of the Country.
Type
string
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of countries
application/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": [
{
}
]
}
GET
/v1/country
Samples​
Contact V2​
An updated version of contact management with additional features or fields.
Operations​
Fetches a list containing Contacts​
GET
/v2/contact
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Contact.
Type
string
uid
The globally unique identifier to identify a Contact.
Type
string
created_at
The epoch time when the Contact was created.
Type
string
modified_at
The epoch time when the Contact was last modified.
Type
string
active
If true, the Contact is active and usable in ezyVet.
Type
string
code
The custom code override for the Contact.
Type
string
first_name
The Contact's first name.
Type
string
last_name
The Contact's last/family name.
Type
string
business_name
The Contact's business name, if it is a business.
Type
string
is_customer
If true, the Contact is a customer.
Type
string
is_vet
If true, the Contact is a vet.
Type
string
is_supplier
If true, the Contact is a supplier.
Type
string
is_syndicate
If true, the Contact is a syndicate.
Type
string
is_staff_member
If true, the Contact is a staff member.
Type
string
stop_credit
Specifies if the Contact can be invoiced: OK (invoiceable), WARNING (issues a warning when invoiced), STOP (cannot be invoiced).
Type
string
Valid values
"OK""WARNING""STOP"website
The Contact's website.
Type
string
address_physical
The unique identifier of the PhysicalAddress.
Type
string
address_postal
The unique identifier of the PostalAddress.
Type
string
Responses​
Successful response
application/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": [
]
}
GET
/v2/contact
Samples​
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.
Type
number
active
If true, the ContactDetail is active and usable in ezyVet.
Type
boolean
Default
truecreated_at
The epoch time when the ContactDetail was created.
Type
number
modified_at
The epoch time when the ContactDetail was last modified.
Type
number
name
The name of the ContactDetail, such as 'Home Phone' or 'Business E-mail'.
Type
string
value
The value of the ContactDetail, such as the number, or the email (depending on its ContactDetailType).
Type
string
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.
Type
string
contact_id
The ID of the Contact to whom this ContactDetail is assigned.
Type
number
type_id
The ID of the ContactDetailType of this ContactDetail.
Type
number
preferred
If true, this ContactDetail is a preferred contact method for the related Contact.
Type
boolean
Default
falseResponses​
A list of ContactDetails
application/json
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"contactdetail": {
"id": 0,
"uid": "string",
"active": true,
"created_at": 0,
"modified_at": 0,
"name": "string",
"value": "string",
"contact_id": 0,
"contact_uid": "string",
"value_cleaned": "string",
"type_id": "string",
"preferred": false
}
}
],
"messages": [
]
}
GET
/v2/contactdetail
Samples​
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
Fetch a BillingCredit​
GET
/v1/billingcredit
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a BillingCredit.
Type
number
active
If true, the BillingCredit is active and visible in ezyVet.
Type
boolean
created_at
The epoch time when the BillingCredit was created.
Type
number
modified_at
The epoch time when the BillingCredit was last modified.
Type
number
wellness_plan_id
The ID of the Wellness Plan the BillingCredit is associated with.
Type
number
wellness_plan_benefit_id
The ID of the Wellness Plan Benefit the BillingCredit is associated with.
Type
number
wellness_plan_membership_id
The ID of the Wellness Plan Membership the BillingCredit is associated with.
Type
number
wellness_plan_membership_status_period_id
The ID of the Wellness Plan Membership Status Period the BillingCredit is associated with.
Type
number
associated_type
The name of the record type the BillingCredit is associated with.
Type
string
associated_id
The ID of the record the BillingCredit is associated with.
Type
number
Responses​
A BillingCredit object
application/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": [
]
}
GET
/v1/billingcredit
Samples​
Fetches a list containing Invoice(s).​
GET
/v1/invoice
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
animal_id*
The ID of the Animal associated with the Invoice.
Type
Requiredstring
id
The ID number used by the system to uniquely identify an Invoice.
Type
string
active
If true, the Invoice is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Invoice was created.
Type
string
modified_at
The epoch time when the Invoice was last modified.
Type
string
ownership_id
The ID of the Ownership Separation to which this Invoice belongs.
Type
string
code
The auto-generated code of the Invoice. Cannot be modified.
Type
string
subtotal
The sum of all InvoiceLines totals exclusive of tax (up to 2 decimal places).
Type
string
tax
The sum of all InvoiceLines tax amounts (up to 2 decimal places).
Type
string
contact_id*
Required. The ID of the Contact associated with the Invoice.
Type
Requiredstring
consult_id
The ID of the Consult associated with the Invoice.
Type
string
payment_terms_id
The ID for the PaymentTerm of the Invoice.
Type
string
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.
Type
string
date
The epoch time of the Invoice transaction date.
Type
string
date_due
The epoch time of when the Invoice transaaction is due for payment.
Type
string
customer_reference_number
Customer reference number for the Invoice.
Type
string
limit
Sets the limit on the number of items returned (range: 1 - 50)
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of Invoices.
application/json
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"invoice": {
"id": "string",
"active": "string",
"created_at": "string",
"modified_at": "string",
"ownership_id": "string",
"code": "string",
"contact_id": "string",
"animal_id": "string",
"consult_id": "string",
"subtotal": "string",
"tax": "string",
"includes_tax": "string",
"payment_terms_id": "string",
"date": "string",
"date_due": "string",
"date_approved": 0,
"approved_by": "string",
"customer_reference_number": "string",
"invoice_line_list": [
{
"id": "string"
}
],
"linked_payments": [
{
"id": "string",
"amount": "string",
"type": "string"
}
]
}
}
],
"messages": [
"string"
]
}
GET
/v1/invoice
Samples​
Fetches the InvoiceLines for the given Invoice (id=9).​
GET
/v1/invoiceline
Parameters​
Query Parameters
invoice_id*
Type
Requirednumber
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
ownership_id
Type
string
location_id
Type
string
product_id
Type
string
staff_user_id
Type
string
quantity
Type
string
status
Type
string
tax_code
Type
string
Responses​
A list of InvoiceLines.
application/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": [
{
}
]
}
GET
/v1/invoiceline
Samples​
Fetch a Payment list​
GET
/v1/payment
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Payment.
Type
string
created_at
The epoch time when the Payment was created.
Type
string
modified_at
The epoch time when the Payment was last modified.
Type
string
active
If true, the Payment is active and usable in ezyVet.
Type
string
ownership_id
The ID of the ownership Separation to which this Payment belongs.
Type
string
amount
The amount of the Payment. This is the total amount that was paid in the Payment.
Type
string
method
The PaymentMethod used to make the Payment.
Type
string
details
Any details regarding the Payment.
Type
string
date
The date on which the Payment was made.
Type
string
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.
Type
string
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).
Type
number
Default
10Responses​
A list containing Payments.
application/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": [
{
}
]
}
GET
/v1/payment
Samples​
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.
Type
string
created_at
The epoch time when the PaymentMethod was created.
Type
string
modified_at
The epoch time when the PaymentMethod was last modified.
Type
string
active
If true, the PaymentMethod is active and usable in ezyVet.
Type
string
name
The name of the PaymentMethod.
Type
string
uses_eftpos_machine
If true, the PaymentMethod uses an eftpos machine.
Type
string
type
The type of the PaymentMethod. E.g. 'Direct'.
Type
string
commission_rate
The commission rate of the PaymentMethod.
Type
string
surcharge_amount
The surcharge amount of the PaymentMethod.
Type
string
surcharge_type
The type of the surcharge.
Type
string
Responses​
Successful response
application/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": [
{
}
]
}
GET
/v1/paymentmethod
Samples​
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.
Type
number
active
If true, the Price Adjustment is applied to the associated record.
Type
boolean
Default
truetype
The type of adjustment. Can be one of: User, Credit, Rounding, Discount, Surcharge.
Type
string
associated_type
The type of record that was adjusted.
Type
string
associated_id
The associated_type records ID.
Type
string
triggering_type
The type of record that triggered the Price Adjustment.
Type
string
triggering_id
The triggering_type records ID.
Type
number
wellness_plan_id
The ID of the related Wellness Plan.
Type
number
Default
nullwellness_plan_benefit_id
The ID of the related Wellness Plan Benefit.
Type
number
Default
nullwellness_plan_membership_id
The ID of the related Wellness Plan Membership.
Type
number
Default
nullResponses​
A list of Price Adjustments with metadata.
application/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"
]
}
GET
/v1/priceadjustment
Samples​
Fetches a list containing estimates.​
GET
/v2/estimate
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Estimate.
Type
number
active
If true, the Estimate is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Estimate was created.
Type
string
modified_at
The epoch time when the Estimate was last modified.
Type
string
date
The epoch time of when the Estimate was last updated by the insurer.
Type
string
animal_id
The ID of the Animal associated with Estimate.
Type
number
contact_id
The ID of the Contact associated with Estimate.
Type
number
Responses​
A list containing estimates.
application/json
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"estimate": {
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"number": "string",
"name": "string",
"total": 0,
"date": 0,
"subtotal": 0,
"tax": 0,
"contact_id": 0,
"animal_id": "string",
"consult_id": "string",
"line_item": [
{
"id": 0,
"created_at": 0,
"modified_at": 0,
"active": true,
"name": "string",
"price": 0,
"pricetax": 0,
"qty": 0,
"total": 0,
"totaltax": 0,
"taxcode": "string",
"taxrate": 0,
"discount": 0
}
]
}
}
],
"messages": [
"string"
]
}
GET
/v2/estimate
Samples​
Fetch an Invoice list​
GET
/v2/invoice
Fetches a list containing Invoice(s). (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Invoice.
Type
number
created_at
The epoch time when the Invoice was created.
Type
number
modified_at
The epoch time when the Invoice was last modified.
Type
number
active
If true, the Invoice is active and usable in ezyVet.
Type
boolean
code
The auto-generated code of the Invoice. Cannot be modified.
animal_id
The ID of the Animal associated with the Invoice.
Type
number
consult_id
The ID of the Consult associated with the Invoice.
Type
number
contact_id
The ID of the Contact associated with the Invoice.
Type
number
date
The epoch time of the Invoice transaction date.
Type
number
date_due
The epoch time of when the Invoice transaction is due for payment.
Type
number
date_approved
The epoch time of when the Invoice transaction is approved.
Type
number
approved_by
The ID of the User that approved the Invoice.
Type
number
Responses​
Successful response
application/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": [
{
}
]
}
GET
/v2/invoice
Samples​
Fetches the InvoiceLine(s) for a given Invoice.​
GET
/v2/invoiceline
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
invoice_id*
Type
Requiredstring
id
Type
string
created_at
Type
string
modified_at
Type
string
active
Type
string
product_id
Type
string
batch
Type
string
sales_person
Type
string
quantity
Type
string
status
Type
string
tax_code
Type
string
ownership_id
Type
string
location_id
Type
string
Responses​
A list of InvoiceLines.
application/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": [
{
}
]
}
GET
/v2/invoiceline
Samples​
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.
Type
Requirednumber
Query Parameters
items_page
The page number for pagination.
Type
number
items_page_size
The number of items per page.
Type
number
Responses​
Successful response
application/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": [
{
}
]
}
GET
/v2/ledgeraccount/{id}
Samples​
Get payments​
GET
/v2/payment
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ezyVet ID of the record.
Type
string
Example
"1"active
If true, the record is active and usable in ezyVet.
Type
string
Example
"1"created_at
The epoch time when the record was created.
Type
string
Example
1695766710modified_at
The epoch time when the record was last modified
Type
string
Example
1695766710amount
The amount of the payment in dollars.
Type
integer
Example
100method
The ID of the payment method for which the payment was captured.
Type
integer
Example
5client_contact
The ID of the contact record for which the payment should be assigned.
Type
integer
Example
323status
The status of the payment.
Type
string
Example
"accepted"ownership_id
The ID of the separation where the payment was taken.
Type
integer
Example
5date
The date when the payment was taken (in epoch time)
Type
integer
Example
1671477420details
Details associated with the payment.
Type
string
Example
""comments
Comments associated with the payment.
Type
string
Example
""cash_amount
The amount paid in cash.
Type
string
Example
"45.00"cash_change
The amount of change given in cash.
Type
string
Example
0rounding_factor
The denomination to which the Payment is rounded.
Type
string
Example
"0.10"allocated
The amount allocated to an invoice.
Type
integer
Example
45Responses​
Gets a payment
application/json
{
"meta": {
"timestamp": 1695766710,
"items_page": 1,
"items_page_total": 191,
"items_page_size": 1,
"items_total": 29,
"transaction_id": "c780c14f01293932e1d1f16db7bfe017a6f02eb6e33bb6dc13944fe07cb6a85c"
},
"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": [
[
]
]
}
GET
/v2/payment
Samples​
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.
Type
number
created_at
The epoch time when the Tax Rate was created.
Type
number
modified_at
The epoch time when the Tax Rate was last modified.
Type
number
active
If true, the Tax Rate is active and usable in ezyVet.
Type
boolean
Responses​
A list of Tax Rates.
application/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": [
]
}
GET
/v2/taxrate
Samples​
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.
Type
number
created_at
The epoch time when the Transaction was created.
Type
number
modified_at
The epoch time when the Transaction was last modified.
Type
number
active
If true, the Transaction is active and usable in ezyVet.
Type
boolean
Default
truepayment_id
The ID of the associated Payment linked to this Transaction.
Type
number
ownership_id
The ID of the Ownership Separation to which this Transaction belongs.
Type
number
Responses​
A list of Transactions with additional meta information.
application/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": [
{
}
]
}
GET
/v2/transaction
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Animal.
Type
string
active
If true, the Animal is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Animal was created.
Type
string
modified_at
The epoch time when the Animal was last modified.
Type
string
name
The name of the Animal.
Type
string
code
The custom code override for the Animal.
Type
string
sex_id
The ID of the Sex of the Animal.
Type
string
is_dead
If true, the Animal is dead.
Type
boolean
is_hostile
If true, the Animal is not friendly. This is marked by the 'FRIENDLY' or 'CARE' image on ezyVet's Animal screen.
Type
boolean
animalcolour_id
The ID of the AnimalColour.
Type
string
species_id
The ID of the Species of the Animal.
Type
string
breed_id
The ID of the Breed of the Animal.
Type
string
rabies_number
The rabies registration number of the Animal. This field is not necessarily used by clinics throughout the world.
Type
string
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.
Type
string
microchip_number
The microchip number of the Animal.
Type
string
contact_id
The ID of the owner of the Animal.
Type
string
date_of_birth
The epoch time the Animal was born.
Type
string
is_estimated_date_of_birth
If true, the date of birth is considered to be an estimate only.
Type
boolean
date_of_death
The epoch time the Animal died.
Type
string
death_reason
The reason of the Animal death.
Type
string
date_of_desex
The epoch time the Animal was spayed/neutered.
Type
string
referring_clinic_id
The Contact ID of the clinic that referred the Animal.
Type
string
referring_vet_id
The Contact ID of the vet that referred the Animal.
Type
string
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.
Type
string
weight_unit
The unit of weight that the Animal was measured with. This can be either Kilogram (kg), Pounds (lb) or Grams (g).
Type
string
Valid values
"kg""lb""g"weight
The weight of the Animal.
Type
string
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).
Type
number
Valid values
013notes
Notes that are displayed within ezyVet on the animal page.
Type
string
notes_important
If true, the Animal's notes are marked as important.
Type
boolean
Responses​
A list of Animals
application/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": "string",
"guid": "string"
}
}
],
"messages": [
"string"
]
}
GET
/v1/animal
Samples​
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.
Type
string
active
If true, the AnimalColour is active and usable in ezyVet.
Type
string
created_at
The epoch time when the AnimalColour was created.
Type
string
modified_at
The epoch time when the AnimalColour was last modified.
Type
string
name
The name of the AnimalColour.
Type
string
Responses​
Successful response
application/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": [
]
}
GET
/v1/animalcolour
Samples​
Fetch a Breed list​
GET
/v1/breed
Fetches a list containing Breed(s). (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
species_id*
Type
Requiredstring
id
active
created_at
modified_at
name
Type
string
limit
Default
10page
Default
1Responses​
A JSON object containing the breed list
application/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": [
{
}
]
}
GET
/v1/breed
Samples​
Sex​
Defines and manages animal sex data (e.g., male, female, neutered).
Operations​
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.
Type
string
active
If true, the Sex is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Sex was created.
Type
string
modified_at
The epoch time when the Sex was last modified.
Type
string
name
The name of the Sex.
Type
string
abbreviation
The name of the Sex.
Type
string
is_desexed
If true, the Sex is spayed/neutered.
Type
boolean
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of Sexes.
application/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": [
]
}
GET
/v1/sex
Samples​
Fetch a Species list​
GET
/v1/species
Fetches a list containing Species. (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Responses​
A list of species
application/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": [
]
}
GET
/v1/species
Samples​
Fetches a list containing Animal(s)​
GET
/v2/animal
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Animal.
Type
string
uid
The UID used by the system to uniquely identify an Animal.
Type
string
active
If true, the Animal is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Animal was created.
Type
string
modified_at
The epoch time when the Animal was last modified.
Type
string
code
The custom code override for the Animal.
Type
string
sex_id
The ID of the Sex of the Animal.
Type
string
is_dead
If true, the Animal is dead.
Type
boolean
is_hostile
If true, the Animal is not friendly. This is marked by the 'FRIENDLY' or 'CARE' image on ezyVet's Animal screen.
Type
boolean
animalcolour_id
The ID of the AnimalColour.
Type
string
species_id
The ID of the Species of the Animal.
Type
string
breed_id
The ID of the Breed of the Animal.
Type
string
rabies_number
The rabies registration number of the Animal. This field is not necessarily used by clinics throughout the world.
Type
string
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.
Type
string
microchip_number
The microchip number of the Animal.
Type
string
contact_id
The ID of the owner of the Animal.
Type
string
date_of_birth
The epoch time the Animal was born.
Type
string
is_estimated_date_of_birth
If true, the date of birth is considered to be an estimate only.
Type
boolean
date_of_death
The epoch time the Animal died.
Type
string
death_reason
The reason of the Animal death.
Type
string
date_of_desex
The epoch time the Animal was spayed/neutered.
Type
string
referring_clinic_id
The Contact ID of the clinic that referred the Animal.
Type
string
referring_vet_id
The Contact ID of the vet that referred the Animal.
Type
string
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.
Type
string
weight_unit
The unit of weight that the Animal was measured with. This can be either Kilogram (kg), Pounds (lb) or Grams (g).
Type
string
Valid values
"kg""lb""g"weight
The weight of the Animal.
Type
string
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).
Type
number
Valid values
013notes
Notes that are displayed within ezyVet on the animal page.
Type
string
notes_important
If true, the Animal's notes are marked as important.
Type
boolean
Responses​
A list of Animals
application/json
{
"meta": {
"timestamp": "string",
"items_page": "string",
"items_page_total": "string",
"items_page_size": "string",
"items_total": "string"
},
"items": [
{
"animal": {
"id": 0,
"uid": "string",
"active": true,
"created_at": 0,
"modified_at": 0,
"name": "string",
"code": "string",
"sex_id": 0,
"is_dead": true,
"is_hostile": "string",
"animalcolour_id": 0,
"species_id": 0,
"breed_id": 0,
"rabies_number": "string",
"date_of_rabies_vaccination": "string",
"microchip_number": "string",
"contact_id": 0,
"date_of_birth": 0,
"is_estimated_date_of_birth": "string",
"date_of_death": "string",
"death_reason": "string",
"date_of_desex": 0,
"referring_clinic_id": "string",
"referring_vet_id": "string",
"residence_contact_id": "string",
"weight": 0,
"weight_unit": "string",
"resuscitate": "string",
"notes": "string",
"notes_important": true,
"guid": "string"
}
}
],
"messages": [
"string"
]
}
GET
/v2/animal
Samples​
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.
Operations​
Fetch an Appointment list​
GET
/v1/appointment
Gets a list of appointments.
It's recommended to use the /v2/appointment endpoint.
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Appointment.
Type
string
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.
Type
string
active
If true, the Appointment is active and usable in ezyVet.
Type
boolean
created_at
The epoch time when the Appointment was created.
Type
string
modified_at
The epoch time when the Appointment was last modified.
Type
string
recurrence_interval
The interval between recurring appointments (in weeks).
Type
string
Default
0recurrence_end_time
The epoch time for when the recurrence ends (if the appointment is recurring).
Type
string
start_time
The epoch time for when the Appointment starts.
Type
string
duration
The duration of the Appointment in seconds.
Type
string
appointment_type_id
Refers to the ID of the AppointmentType of the Appointment.
Type
string
appointment_status_id
Refers to the ID of the AppointmentStatus of the Appointment.
Type
string
animal_id
Refers to the ID of the Animal.
Type
string
consult_id
Refers to the ID of the Consult.
Type
string
contact_id
Refers to the ID of the Contact.
Type
string
limit
Limits the number of results returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
Successful response
application/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": [
]
}
GET
/v1/appointment
Samples​
Appointment Status​
Manages the status of appointments (e.g., scheduled, completed, canceled).
Operations​
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.
Type
string
active
If true, the AppointmentStatus is active and usable in ezyVet.
Type
string
created_at
The epoch time when the AppointmentStatus was created.
Type
string
modified_at
The epoch time when the AppointmentStatus was last modified.
Type
string
name
The name of the AppointmentStatus.
Type
string
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of appointment statuses
application/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": [
{
}
]
}
GET
/v1/appointmentstatus
Samples​
Appointment Type​
Defines types of appointments (e.g., check-up, surgery, vaccination).
Operations​
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.
Type
boolean
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.
Type
string
default_duration
The default duration of the Appointment (in minutes).
Default
30limit
Limits the number of results returned.
Default
10page
Specifies the page number of the result.
Default
1Responses​
A list of AppointmentTypes
application/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": [
]
}
GET
/v1/appointmenttype
Samples​
Resource​
Manages clinic resources, such as staff, rooms, or equipment, for scheduling.
Operations​
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.
Type
string
active
If true, the Resource is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Resource was created.
Type
string
modified_at
The epoch time when the Resource was last modified.
Type
string
ownership_id
The ID of the Ownership Separation to which the Resource belongs.
Type
string
name
The name of the Resource.
Type
string
type
The type of the Resource: 'user' (default), 'facility'
Type
string
access
The level of the access the Resource has.
Type
string
Valid values
"None""On Calendar""Member"Responses​
A list of resources.
application/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": [
{
}
]
}
GET
/v1/resource
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Appointment.
Type
string
created_at
The epoch time when the Appointment was created.
Type
string
modified_at
The epoch time when the Appointment was last modified.
Type
string
active
If true, the Appointment is active and usable in ezyVet.
Type
boolean
start_at
The epoch time for when the Appointment starts.
Type
string
duration
The duration of the Appointment in seconds.
Type
string
type_id
Refers to the ID of the AppointmentType of the Appointment.
Type
string
status_id
Refers to the ID of the AppointmentStatus of the Appointment.
Type
string
animal_id
Refers to the ID of the Animal.
Type
string
consult_id
Refers to the ID of the Consult.
Type
string
contact_id
Refers to the ID of the Contact.
Type
string
sales_resource
ID of the SalesResource allocated to the Appointment.
Type
number
Responses​
Successful response
application/json
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"transaction_id": "string",
"timestamp": 0
},
"items": [
{
"appointment": {
"id": 0,
"uid": "string",
"created_at": 0,
"modified_at": 0,
"active": true,
"start_at": 0,
"duration": 0,
"type_id": 0,
"type_uid": "string",
"status_id": 0,
"description": "string",
"animal_id": 0,
"animal_uid": "string",
"consult_id": "string",
"contact_id": 0,
"contact_uid": "string",
"sales_resource": 0,
"event_group": 0,
"destination_address": 0,
"resources": [
{
"id": 0
}
],
"cancellation_reason": 0,
"cancellation_reason_text": "string"
}
}
],
"messages": [
]
}
GET
/v2/appointment
Samples​
Appointment Type V2​
An updated version of appointment type management with additional options and refinements.
Operations​
Fetches a list containing AppointmentTypes​
GET
/v2/appointmenttype
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an AppointmentType.
Type
number
uid
The ID number used by the system to uniquely identify an AppointmentType across all ezyVet sites.
Type
string
active
If true, the AppointmentType is active and usable in ezyVet.
Type
boolean
limit
Limits the number of results returned.
Type
number
Default
10page
Specifies the page number of the result.
Type
number
Default
1Responses​
A list of AppointmentType(s)
application/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": [
{
}
]
}
GET
/v2/appointmenttype
Samples​
Resource V2​
An updated version of resource management with additional functionality.
Operations​
Fetches a list of Resources​
GET
/v2/resource
Fetches a list containing Resource(s).
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Resource.
Type
number
uid
The ID number used by the system to uniquely identify an Resource across all ezyVet sites.
Type
string
created_at
The epoch time when the Resource was created.
Type
number
modified_at
The epoch time when the Resource was last modified.
Type
number
active
If true, the Resource is active and usable in ezyVet.
Type
boolean
associated_type
The type of the Resource: 'user' (default), 'facility'
Type
string
associated_id
The ID number used by the system to uniquely identify a user.
Type
number
associated_uid
The ID number used by the system to uniquely identify a user across all ezyVet sites.
Type
string
access
The level of the access the Resource has. The value can be one of the following: 'None', 'On Calendar' or 'Member'.
Type
string
Valid values
"None""On Calendar""Member"ownership_uid
The ID of the Ownership Separation to which this Resource belongs across all ezyVet sites.
Type
string
ownership_id
The ID of the Ownership Separation to which this Resource belongs.
Type
number
Responses​
A list of Resources.
application/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": [
{
}
]
}
GET
/v2/resource
Samples​
Availability​
Manages resource or staff availability for scheduling purposes.
Operations​
Get bookable appointment slots​
GET
/ezycab/availability
Gets bookable appointment slots | Rate limit : 300 calls/minute
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
resources[]*
This parameter can be added multiple times to filter for more than one resource.
Type
Requiredstring
Example
"resource_Tr4l0W5LbTs7aTGSuzi5n"dates[]*
This value must be in the future.
Type
Requiredstring
Example
"2024-06-09T00:00:00.000Z"duration*
- The duration of the appointment slots (in minutes).
- Default minimum value is 10 but can be reduced to 5 with additional filtering (See Availability guide).
- Increments in 5 minutes.
Type
Requirednumber
Example
15filter[slots.available][eq]*
Filtering by whether the appointment slots are available or not.
Type
Requiredboolean
Example
truefilter[slots.appointmentType.id][in]
Filtering by appointment type using the UID. Can provide multiple UIDs separated by commas.
Type
string
Example
"appointmentType_0C0qtekyEL2A0XDUUSbDz"Responses​
OK
application/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"
}
}
}
]
}
GET
/ezycab/availability
Samples​
Create a new appointment booking​
POST
/ezycab/booking
Creates an appointment with associated consultation and billing triggers in the ezyVet system.
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Request Body​
application/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"
]
}
Responses​
Successful booking creation
application/json
{
"id": "bookingRequest_123",
"appointment": "appointment_asdf"
}
POST
/ezycab/booking
Samples​
Shelter Animal Booking​
Manages bookings or records for shelter animals within the clinic.
Operations​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Path Parameters
id*
The ID number used by the system to uniquely identify a Shelter Animal Booking.
Type
Requirednumber
Responses​
A single shelter animal booking
application/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": [
]
}
GET
/v2/shelteranimalbooking/{id}
Samples​
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
Fetch an Assessment​
GET
/v1/assessment
Each Assessment must be linked to a Consult.
Parameters​
Query Parameters
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
consult_id
Type
string
animal_id
Type
string
Default
5vet_id
Type
string
timestamp
Type
string
notes
Type
string
limit
Type
string
Default
10page
Type
string
Default
1Responses​
A JSON object containing the meta information and items array.
application/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": [
]
}
GET
/v1/assessment
Samples​
Fetches a list of Consults​
GET
/v1/consult
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
ownership_id
Type
string
code
Type
string
date
Type
string
animal_id
Type
string
vet_id
Type
string
description
Type
string
limit
Type
string
Default
10page
Type
string
Default
1referring_vet_contact_id
Type
string
referring_clinic_id
Type
string
Responses​
A list of Consults
application/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": [
]
}
GET
/v1/consult
Samples​
Fetch a Diagnostic​
GET
/v1/diagnostic
Parameters​
Query Parameters
id*
The ID number used by the system to uniquely identify a Diagnostic.
Type
Requiredstring
Responses​
A successful response
application/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": [
{
}
]
}
GET
/v1/diagnostic
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Request Body​
application/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
{
"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": [
{
}
]
}
POST
/v1/diagnosticrequest
Samples​
Fetch a Diagnostic Result list​
GET
/v1/diagnosticresult
Fetches a list containing DiagnosticResult(s). (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an DiagnosticResult.
Type
string
active
If true, the DiagnosticResult is active and usable in ezyVet.
Type
string
created_at
The epoch time when the DiagnosticResult was created.
Type
string
modified_at
The epoch time when the DiagnosticResult was last modified.
Type
string
ownership_id
The ID of the Separation to which this DiagnosticResult belongs.
Type
string
consult_id
Refers to the ID of the Consult where the DiagnosticResult is attached.
Type
string
animal_id
Refers to the ID of the Animal.
Type
string
supplier_id
Refers to the ID of the Contact (who is a supplier) of the diagnostic.
Type
string
vet_id
Refers to the ID of the User (who is a vet) associated with the DiagnosticResult.
Type
string
diagnostic_request_id
Refers to the ID of the DiagnosticRequest linked to the DiagnosticResult.
Type
string
reference_number
Refers to the reference number of the DiagnosticRequest linked to the DiagnosticResult.
Type
string
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.
Type
string
specifics
Specifics/notes about the DiagnosticResult.
Type
string
outcome
Notes about the result of the DiagnosticResult. This can be in markdown format.
Type
string
limit
Sets the limit on the number of items returned (range: 1 - 50)
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
Successful response
application/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"
]
}
GET
/v1/diagnosticresult
Samples​
Fetch a DiagnosticResultItem list​
GET
/v1/diagnosticresultitem
Fetches a list of DiagnosticResultItem(s) for a DiagnosticResult.
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
diagnostic_result_id*
Type
Requiredstring
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
timestamp
Type
string
name
Type
string
value
Type
string
unit
Type
string
range_low
Type
string
range_high
Type
string
qualifier
Type
string
notes
Type
string
limit
Type
string
Default
10page
Type
string
Default
1Responses​
A list of DiagnosticResultItem(s)
application/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": [
]
}
GET
/v1/diagnosticresultitem
Samples​
Fetch a HealthStatus list​
GET
/v1/healthstatus
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
animal_id*
The ID number used by the system to uniquely identify an Animal.
Type
Requirednumber
Responses​
Successful response
application/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"
]
}
GET
/v1/healthstatus
Samples​
Fetch a History list​
GET
/v1/history
Fetches a list containing History(s). (up to 10)
Parameters​
Query Parameters
limit
Type
number
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
consult_id
Type
string
animal_id
Type
string
history_system
Type
string
chain
Type
string
comments
Type
string
timestamp
Type
string
vet_id
Type
string
Responses​
A list of History items
application/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": [
{
}
]
}
GET
/v1/history
Samples​
Fetch an array of IntegratedDiagnostic objects​
GET
/v1/integrateddiagnostic
Parameters​
Path Parameters
id
The ID number used by the system to uniquely identify a IntegratedDiagnostic.
Type
number
Query Parameters
code
A code assigned by an ezyVet user to keep track of the IntegratedDiagnostic. This value is subject to change.
Type
string
Responses​
Successful response
application/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": [
{
}
]
}
GET
/v1/integrateddiagnostic
Samples​
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.
Type
Requirednumber
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.
Type
string
outcome
Contains notes about the result of the Operation.
Type
string
Responses​
A list of Operations
application/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": [
]
}
GET
/v1/operation
Samples​
Fetch a PhysicalExam list​
GET
/v1/physicalexam
Fetches a list containing PhysicalExam(s). (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an PhysicalExam.
Type
string
active
If true, the PhysicalExam is active and usable in ezyVet.
Type
string
created_at
The epoch time when the PhysicalExam was created.
Type
string
modified_at
The epoch time when the PhysicalExam was last modified.
Type
string
consult_id
Refers to the ID of the Consult where the PhysicalExam is attached.
Type
string
animal_id
Refers to the ID of the Animal.
Type
string
body_system
Refers to the ID of the BodySystem.
Type
string
chain
The chain of BodySystem items thus far.
Type
string
comments
Comments for the PhysicalExam record.
Type
string
timestamp
The date when PhysicalExam was noted for the consult. Note that this doesn't necessarily refer to when the PhysicalExam record was created.
Type
string
vet_id
Refers to the ID of the User who is a Vet and is linked to the PhysicalExam.
Type
string
Responses​
A list of PhysicalExams
application/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": [
]
}
GET
/v1/physicalexam
Samples​
Fetch a Plan​
GET
/v1/plan
Each Plan must be linked to a Consult.
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Plan.
Type
string
active
If true, the Plan is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Plan was created.
Type
string
modified_at
The epoch time when the Plan was last modified.
Type
string
consult_id
Refers to the ID of the Consult where the Plan is attached.
Type
string
animal_id
Refers to the ID of the Animal.
Type
string
vet_id
Refers to the ID of the User who is the Vet linked to the Plan.
Type
string
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.
Type
string
notes
Notes about the Plan record.
Type
string
limit
Limits the number of items returned.
Type
number
Default
10page
Specifies the page number of the result.
Type
number
Default
1Responses​
Successful response
application/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"
]
}
GET
/v1/plan
Samples​
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.
Type
string
active
If true, the PresentingProblem is active and usable in ezyVet.
Type
string
created_at
The epoch time when the PresentingProblem was created.
Type
string
modified_at
The epoch time when the PresentingProblem was last modified.
Type
string
name
The name of the PresentingProblem.
Type
string
limit
Sets the limit on the number of items returned (range: 1 - 50).
Type
string
Minimum
1Maximum
50Default
10page
Specifies the page number of the result.
Type
string
Minimum
1Default
1Responses​
A list of presenting problems
application/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": [
]
}
GET
/v1/presentingproblem
Samples​
Fetch a PresentingProblemLink list​
GET
/v1/presentingproblemlink
Fetch all the PresentingProblemLinks. (up to 10)
Parameters​
Query Parameters
consult_id*
Type
Requiredstring
id
active
created_at
modified_at
presenting_problem_id
Type
string
limit
Default
10page
Default
1Responses​
A list of PresentingProblemLinks
application/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": [
{
}
]
}
GET
/v1/presentingproblemlink
Samples​
Fetch a list containing Vaccinations​
GET
/v1/vaccination
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Vaccination.
Type
string
active
If true, the Vaccination is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Vaccination was created.
Type
string
modified_at
The epoch time when the Vaccination was last modified.
Type
string
vet_id
Refers to the ID of the User (vets only) who performed the vaccination.
Type
string
consult_id
Refers to the ID of the Consult related to the Vaccination.
Type
string
product_id
Refers to the ID of the vaccine Product used for the Vaccination.
Type
string
qty
Refers to the amount of product units administered.
Type
string
description
Description and notes for the Vaccination.
Type
string
date_of_administration
The epoch time when the vaccine Product was administered.
Type
string
date_of_next_administration
The epoch time when the vaccine Product will next be administered.
Type
string
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of Vaccinations
application/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": [
]
}
GET
/v1/vaccination
Samples​
Get event groups​
GET
/v2/eventgroup
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ezyVet ID of the record.
Type
string
Example
"1"uid
The ezyVet UID of the record.
Type
string
active
If true, the record is active and usable in ezyVet.
Type
string
Example
"1"limit
Sets the number of items to be returned in each page. Default is 10, Limit is 200.
Type
number
Example
200page
Sets the page to be returned.
Type
number
Example
1created_at
The epoch time when the record was created.
Type
string
Example
1695766710modified_at
The epoch time when the record was last modified
Type
string
Example
1695766710socOnly
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.
Type
boolean
Example
trueResponses​
Returns a list of event groups.
application/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": [
[
]
]
}
GET
/v2/eventgroup
Samples​
Get standard of care events​
GET
/v2/standardofcare
Gets standard of care events
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
limit
Sets the number of items to be returned on each page. Min: 1, Max: 5000
Type
integer
Example
5000page
Type
integer
Example
1modified_at
The epoch time when the record was last modified
Type
string
Example
1695766710Responses​
Returns a list of SOC events.
application/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": [
[
]
]
}
GET
/v2/standardofcare
Samples​
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
Fetch a list of Barcodes​
GET
/v1/barcode
Fetches a list containing Barcodes (up to 10).
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Barcode.
Type
number
created_at
The epoch time when the Barcode was created.
Type
number
modified_at
The epoch time when the Barcode was last modified.
Type
number
for_type
The type of record that the Barcode is for. EG: 'product'.
Type
string
for_id
The ID of the record that the Barcode is for.
Type
number
active
If true, the Barcode is active and usable in ezyVet.
Type
boolean
Default
trueformat
The format or standard of the system used Barcode. EG: 'EAN-13', or 'CODE128'.
Type
string
barcode
The text content for the Barcode.
Type
string
Responses​
Successful response
application/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": [
{
}
]
}
GET
/v1/barcode
Samples​
Fetch a Product list​
GET
/v1/product
Fetches a list containing Product(s). (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Product.
Type
string
active
If true, the Product is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Product was created.
Type
string
modified_at
The epoch time when the Product was last modified.
Type
string
code
String generally used by clinic staff members to identify Products.
Type
string
questions
Complex inquiries about the Product. Refer to the Questions table.
Type
string
name
Name of the Product as it is visible on ezyVet.
Type
string
product_group_id
Type
string
description
The description of the Product.
Type
string
warning
This is where clinic staff can write warning messages regarding the Product, such as "For external use only".
Type
string
type
Specifies the Product type, and where it can be used: Standard, Medication, Vaccination, Diagnostic, Integrated Diagnostic, Procedure
Type
string
Valid values
"Standard""Medication""Vaccination""Diagnostic""Integrated Diagnostic""Procedure"Default
"Standard"is_sold
If true, the Product can be sold.
Type
string
is_purchased
If true, the Product can be bought.
Type
string
is_derived_price
If true, the price is derived from all the Product(s) contained.
Type
string
has_direct_cost
If true, the Product has the "has direct cost" checkmark set and can use markup.
Type
string
product_identifier
For the US, this is the 11 digit NDC or product ID for compounds.
Type
string
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.
Type
string
limit
Limits the number of results returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of products with stock levels
application/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": [
{
}
]
}
GET
/v1/product
Samples​
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.
Type
string
active
If true, the ProductGroup is active and usable in ezyVet.
Type
string
created_at
The epoch time when the ProductGroup was created.
Type
string
modified_at
The epoch time when the ProductGroup was last modified.
Type
string
name
The name of the ProductGroup.
Type
string
description
The description of the ProductGroup.
Type
string
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of ProductGroups
application/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": [
]
}
GET
/v1/productgroup
Samples​
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.
Type
Requirednumber
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.
Type
string
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.
Type
string
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
{
"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": [
]
}
GET
/v1/purchaseorder
Samples​
Fetches a list containing PurchaseOrderItem(s)​
GET
/v1/purchaseorderitem
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a PurchaseOrderItem.
Type
string
active
If true, the PurchaseOrderItem is active and usable in ezyVet.
Type
string
created_at
The epoch time when the PurchaseOrderItem was created.
Type
string
modified_at
The epoch time when the PurchaseOrderItem was last modified.
Type
string
purchase_order_id
The ID of the PurchaseOrder to which this PurchaseOrderItem is linked.
Type
string
product_id
The ID of the product on the PurchaseOrderItem.
Type
string
supplier_code
The code of the product in the supplier's records.
Type
string
outers
The number of outers being ordered for the given product.
Type
string
units_per_outer
The number of units of the product included in one outer.
Type
string
price_per_unit
The price of one unit in an outer.
Type
string
tax_per_unit
The tax content per unit.
Type
string
quantity
The number of units being ordered for the given product.
Type
string
total
The total monetary amount of the PurchaseOrderItem excluding tax.
Type
string
total_tax
The total tax content of the PurchaseOrderItem.
Type
string
ownership_id
The ID of the Ownership Separation to which this PurchaseOrderItem belongs.
Type
string
Responses​
A list of PurchaseOrderItems
application/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": [
]
}
GET
/v1/purchaseorderitem
Samples​
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.
Type
string
active
If true, the ReceiveInvoice is active and usable in ezyVet.
Type
string
created_at
The epoch time when the ReceiveInvoice was created.
Type
string
modified_at
The epoch time when the ReceiveInvoice was last modified.
Type
string
invoice_number
The value given by a Supplier to track the invoice on their end.
Type
string
date
The epoch time of the ReceiveInvoice transaction date.
Type
string
due_date
The due date of the ReceiveInvoice in epoch time.
Type
string
supplier_id
The ID of the Supplier who sent the ReceiveInvoice.
Type
string
freight
The total monetary cost of the freight (inc tax).
Type
string
freight_tax
The total tax content in the freight amount.
Type
string
comments
Any comments.
Type
string
tax
The total tax content of the ReceiveInvoice.
Type
string
total
The total monetary amount of the ReceiveInvoice. This value is tax inclusive.
Type
string
ownership_id
The ID of the Ownership Separation to which this ReceiveInvoice belongs.
Type
string
Responses​
A list of Receive Invoices
application/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"
]
}
GET
/v1/receiveinvoice
Samples​
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.
Type
string
Responses​
A list of Receive Invoice Items
application/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"
]
}
GET
/v1/receiveinvoiceitem
Samples​
Fetch a list of Batches​
GET
/v2/batch
Fetches a list containing Batches (up to 10)
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Batch.
Type
number
uid
The ID number used by the system to uniquely identify an Batch across all ezyVet sites.
Type
string
created_at
The epoch time when the Batch was created.
Type
number
modified_at
The epoch time when the Batch was last modified.
Type
number
active
If true, the Batch is active and usable in ezyVet.
Type
boolean
Default
truename
The name given for a Batch.
Type
string
type
The type of Batch.
Type
string
Responses​
A list of Batches
application/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": [
{
}
]
}
GET
/v2/batch
Samples​
Fetch a Specific Product​
GET
/v2/product/{product_id}
Parameters​
Header Parameters
authorization*
Bearer token for authentication
Type
Requiredstring
Path Parameters
product_id*
The ID number used by the system to uniquely identify a Product.
Type
Requirednumber
Responses​
A specific product by its id.
application/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": [
{
}
]
}
GET
/v2/product/{product_id}
Samples​
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.
Type
number
Responses​
Successful response
application/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"
]
}
GET
/v2/productminimumstock
Samples​
Fetch a Product Pricing by ID​
GET
/v2/productpricing
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Path Parameters
id
Type
number
Query Parameters
created_at
The epoch time when the Product Pricing was created.
Type
number
modified_at
The epoch time when the Product Pricing was last modified.
Type
number
active
If true, the Product Pricing is active and usable in ezyVet.
Type
boolean
product_id
The ID of the Product this Product Pricing relates to.
Type
number
Responses​
A JSON object containing product pricing details
application/json
{
"meta": {
"items_page": 0,
"items_page_total": 0,
"items_page_size": 0,
"items_total": 0,
"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"
]
}
GET
/v2/productpricing
Samples​
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.
Type
number
supplier_contact_id
The ID of the supplier contact to filter by.
Type
number
Responses​
A list of product suppliers.
application/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": [
{
}
]
}
GET
/v2/productsupplier
Samples​
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.
Type
number
active
If true, the ReceiveInvoice is active and usable in ezyVet.
Type
boolean
Default
truecreated_at
The epoch time when the ReceiveInvoice was created.
Type
number
modified_at
The epoch time when the ReceiveInvoice was last modified.
Type
number
invoice_number
The value given by a Supplier to track the invoice on their end.
Type
string
date
The epoch time of the ReceiveInvoice transaction date.
Type
number
due_date
The due date of the ReceiveInvoice in epoch time.
Type
number
supplier_id
The ID of the Supplier who sent the ReceiveInvoice.
Type
number
ownership_id
The ID of the OwnershipSeparation to which this ReceiveInvoice belongs.
Type
number
Responses​
A list of Receive Invoices and their associated Receive Invoice Items.
application/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": [
]
}
GET
/v2/receiveinvoice
Samples​
Fetches a list containing ReceiveInvoiceItems​
GET
/v2/receiveinvoiceitem
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a ReceiveInvoiceItem.
Type
number
created_at
The epoch time when the ReceiveInvoiceItem was created.
Type
number
modified_at
The epoch time when the ReceiveInvoiceItem was last modified.
Type
number
active
If true, the ReceiveInvoiceItem is active and usable in ezyVet.
Type
boolean
Default
truereceive_invoice_id
The ID of the ReceiveInvoice the ReceiveInvoiceItem is linked to.
Type
string
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.
Type
number
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.
Type
number
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.
Type
number
Default
0total
The total monetary amount of the ReceiveInvoiceItem excluding tax.
Type
number
Default
0total_tax
The total tax content of the ReceiveInvoiceItem.
Type
number
tax_rate
The tax rate applied to the ReceiveInvoiceItem.
Type
number
tax_code
The tax code relating to the tax rate on the ReceiveInvoiceItem.
Type
string
product_id
The ID of the Product on the ReceiveInvoiceItem.
Type
number
product_supplier_id
The ID of the ProductSupplier on the ReceiveInvoiceItem.
Type
number
supplier_code
The code of the Product in the Supplier's records. (i.e. the code given to the product by the supplier)
Type
string
location_id
The ID of the LocationSeparation to which this ReceiveInvoiceItem belongs.
Type
number
Responses​
A list of ReceiveInvoiceItems
application/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": [
]
}
GET
/v2/receiveinvoiceitem
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Request Body​
application/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
{
"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": [
{
}
]
}
POST
/v2/stockadjustment
Samples​
Creates a single StockAdjustmentItem​
POST
/v2/stockadjustmentitem
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Request Body​
application/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
{
"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"
]
}
POST
/v2/stockadjustmentitem
Samples​
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.
Type
string
active
If true, the StockTransaction is active and usable in ezyVet.
Type
boolean
created_at
The epoch time when the StockTransaction was created.
Type
string
modified_at
The epoch time when the StockTransaction was last modified.
Type
string
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of StockTransaction records.
application/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": [
{
}
]
}
GET
/v2/stocktransaction
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Responses​
Gets inventory tracked products
application/json
{
"data": [
{
"id": "product_CnDsVPsM4Aq81Px7AHPzn",
"name": "Diazepam",
"code": "DZP456",
"unitType": "mg",
"unitCount": 10,
"batchTracked": true
}
],
"meta": [
[
]
]
}
GET
/inventory/v1/products
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
locationUID*
The UID of the inventory location
Type
Requiredstring
Format
"uid"Responses​
Gets products with their inventory balance and requirements
application/json
{
"data": [
{
"productId": "product_CnDsVPsM4Aq81Px7AHPzn",
"product": "Diazepam",
"code": "DZP456",
"available": 2,
"minimum": 3,
"required": 5
}
],
"meta": [
[
]
]
}
GET
/inventory/v1/requirements
Samples​
Supply products to a location​
POST
/inventory/v1/supplied
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
locationUID*
The UID of the location that the products are supplied to
Type
Requiredstring
Example
"ownershipSeparation_9K8oZgeaLT0AEctz3KtwC"Request Body​
application/json
[
{
"productId": "product_MZcxwWMf9lprsWC8MH2OF",
"supplied": 5,
"batch": {
"code": "777-3321",
"expireAt": "2024-01-23"
}
}
]
Responses​
Successful response
application/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
}
}
POST
/inventory/v1/supplied
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Request Body​
application/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",
"date_of_lastdispense": "1764277366",
"price": 0,
"qty": 0,
"remaining": 0
}
]
}
Responses​
Success
application/json
{
"meta": {
"transaction_id": "string",
"timestamp": "string"
},
"items": [
],
"messages": [
{
"level": "string",
"type": "string",
"text": "string",
"fields": {
"prescription_uid": "string"
}
}
]
}
POST
/v1/externalprescription
Samples​
Fetch a list of Prescriptions​
GET
/v1/prescription
Fetches a list containing Prescriptions (up to 10).
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Prescription.
Type
string
active
If true, the Prescription is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Prescription was created.
Type
string
modified_at
The epoch time when the Prescription was last modified.
Type
string
animal_id
The name of the Animal to which the Prescription was issued.
Type
string
consult_id
The name of the Consult to which the Prescription was issued.
Type
string
prescribing_vet_user
The name of the User (a vet) who issued the Prescription.
Type
string
date_of_prescription
The epoch time when the Prescription was issued. This is not necessarily when the Prescription record was created.
Type
string
Responses​
Successful response
application/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"
]
}
GET
/v1/prescription
Samples​
Fetches a list of PrescriptionItems​
GET
/v1/prescriptionitem
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an PrescriptionItem.
Type
string
active
If true, the PrescriptionItem is active and usable in ezyVet.
Type
string
created_at
The epoch time when the PrescriptionItem was created.
Type
string
modified_at
The epoch time when the PrescriptionItem was last modified.
Type
string
prescription_id
Refers to the ID of the Prescription to which the PrescriptionItem belongs.
Type
string
product_id
Refers to the ID of the Product added to the Prescription as a PrescriptionItem.
Type
string
qty
The amount of the PrescriptionItem prescribed.
Type
string
remaining
The amount of the PrescriptionItem remaining from the prescription.
Type
string
instructions
Instructions on how to use the PrescriptionItem.
Type
string
date_start
The epoch time when the PrescriptionItem must start being taken.
Type
string
serial_number
The serial number for PrescriptionItem.
Type
string
Responses​
A list of PrescriptionItems with meta information.
application/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": [
]
}
GET
/v1/prescriptionitem
Samples​
Fetch a Therapeutic list​
GET
/v1/therapeutic
Fetches a list containing Therapeutic(s). (up to 10)
Parameters​
Query Parameters
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
name
Type
string
default_template_id
Type
string
Default
0department_ids
Type
array
Responses​
Successful response
application/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": [
]
}
GET
/v1/therapeutic
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify an Attachment.
Type
string
active
If true, the Attachment is active and usable in ezyVet.
Type
boolean
created_at
The epoch time when the Attachment was created.
Type
string
modified_at
The epoch time when the Attachment was last modified.
Type
string
record_type
The record type the Attachment is for. E.g. Animal, Contact, Consult.
Type
string
record_id
The ID number of the record the Attachment is linked to.
Type
string
mime_type
Multipurpose Internet Mail Extension type. Identifies the format of the Attachment.
Type
string
name
The Attachment filename.
Type
string
Responses​
A successful response
application/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": [
]
}
GET
/v1/attachment
Samples​
Create a File​
POST
/v1/file
NOTE: It's recommended to use the attachment endpoint
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Request Body​
multipart/form-data
object
file_data
string
Required
Format
"binary"notes
string
Responses​
Successful operation
application/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": [
]
}
POST
/v1/file
Samples​
Deprecated
Fetch a list of separations​
GET
/v1/separation
Its recommended to use the v2/separation endpoint
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Separation.
Type
string
active
If true, the Separation is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Separation was created.
Type
string
modified_at
The epoch time when the Separation was last modified.
Type
string
name
The name of the Separation.
Type
string
type
The type of Separation: Database, Business, Division or Location.
Type
string
Valid values
"Database""Business""Division""Location"parent
The ID of the parent Separation. Note, a Database has no parent.
Type
string
contact_id
The ID of the Contact containing business details for this Separation.
Type
string
Responses​
A list of separations
application/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"
]
}
GET
/v1/separation
Samples​
Get the SystemSettings​
GET
/v1/systemsetting
Returns the SystemSetting of the specified site.
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Responses​
Successful response
application/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": [
{
}
]
}
GET
/v1/systemsetting
Samples​
Fetch a list of Tags​
GET
/v1/tag
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Tag.
Type
string
active
If true, the Tag is active and usable in ezyVet.
Type
string
created_at
The epoch time when the Tag was created.
Type
string
modified_at
The epoch time when the Tag was last modified.
Type
string
name
The name of the Tag.
Type
string
associated_id
The ID of the record to which this Tag is associated.
Type
string
associated_type
The name of the entity object to which this Tag is associated.
Type
string
category_id
The ID of the TagCategory to which this Tag belongs.
Type
string
Responses​
A list of Tags
application/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": [
]
}
GET
/v1/tag
Samples​
Fetch a list of Tag Categories​
GET
/v1/tagcategory
Parameters​
Query Parameters
id
Type
string
active
Type
string
created_at
Type
string
modified_at
Type
string
name
Type
string
Responses​
A list of Tag Categories
application/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": [
]
}
GET
/v1/tagcategory
Samples​
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.
Type
string
created_at
The epoch time when the Tag Name was created.
Type
string
modified_at
The epoch time when the Tag Name was last modified.
Type
string
active
If true, the Tag Name is active and usable in ezyVet.
Type
string
category_id
The ID of the Tag Category the Tag Name is part of.
Type
string
Responses​
A list of Tag Names
application/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": [
]
}
GET
/v1/tagname
Samples​
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.
Type
string
active
If true, the User is active and usable in ezyVet.
Type
string
created_at
The epoch time when the User was created.
Type
string
modified_at
The epoch time when the User was last modified.
Type
string
name
The name of the User.
Type
string
code
The code of the User.
Type
string
is_vet
If true, the User is a vet.
Type
string
is_salesperson
If true, the User is a salesperson.
Type
string
is_dev
If true, the User is an internal ezyVet user. When querying the API, set this field to '0'.
Type
string
limit
Limits the number of items returned.
Type
string
Default
10page
Specifies the page number of the result.
Type
string
Default
1Responses​
A list of Users
application/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",
"is_dev": "string",
"email": "string"
}
}
],
"messages": [
]
}
GET
/v1/user
Samples​
Fetch a list of WebHookEvents​
GET
/v1/webhookevents
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Responses​
A JSON object containing the list of WebHookEvents.
application/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": [
]
}
GET
/v1/webhookevents
Samples​
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.
Type
number
active
If true, the Webhook is active and will cause the webhook_url to receive data upon events being fired.
Type
boolean
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.
Type
string
Responses​
Successful response
application/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": [
]
}
GET
/v1/webhooks
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Separation.
Type
number
uid
The ID number used by the system to uniquely identify a Separation across all ezyVet sites.
Type
string
active
If true, the Separation is active and usable in ezyVet.
Type
boolean
created_at
The epoch time when the Separation was created.
Type
number
modified_at
The epoch time when the Separation was last modified.
Type
number
Responses​
A list of separations
application/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": [
{
}
]
}
GET
/v2/separation
Samples​
Get site information​
GET
/v3/siteInformation
Gets site information pertaining to the site specified in the request URL.
Responses​
OK
application/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"
}
}
]
}
}
GET
/v3/siteInformation
Samples​
List all users​
GET
/v4/user
Retrieve a paginated list of all users using token-based pagination.
Pagination:
- Use the
pageSizeparameter to control the number of items returned per page (default: 500, max: 500) - Use the
nextTokenparameter from the responsemetaobject to fetch the next page - The
nextTokenwill be omitted from themetaobject when there are no more pages available
Parameters​
Query Parameters
pageSize
Maximum number of users to return per page
Type
integer
Minimum
1Maximum
500Default
500nextToken
Token for fetching the next page of results. Obtained from the nextToken field in the response meta object.
Type
string
Example
"eyJpZCI6InVzZXJfNjAyYVRJZVY5WHNMME5ZelJjeTFtIn0"status
Filter users by status (active or disabled)
Type
string
Valid values
"active""disabled"Responses​
Users retrieved successfully
application/json
{
"meta": {
"nextToken": "XY9mN4pQr2sT8vW1zA3bC"
},
"data": [
{
"user": {
"id": "user_602aTIeV9XsL0NYzRcy1m",
"name": "John Doe",
"initials": "JD",
"email": "johndoe@email.com",
"login": "joedoe@email.com",
"password": "P@ssw0rd123",
"resetPassword": true,
"mobile": "021 777 8809",
"registration": "9731319",
"qualifications": "Qualified",
"status": "active",
"isVet": true,
"isSalesperson": false,
"roles": [
[
"Veterinarian",
"Practice Manager"
]
]
}
}
]
}
GET
/v4/user
Samples​
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://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Wellness Plan.
Type
number
created_at
The epoch time when the Wellness Plan was created.
Type
number
modified_at
The epoch time when the Wellness Plan was last modified.
Type
number
active
If true, the Wellness Plan is active and usable in ezyVet.
Type
boolean
name
The name of the Wellness Plan.
Type
string
Responses​
A list of Wellness Plans
application/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": [
]
}
GET
/v2/wellnessplan
Samples​
Fetch Wellness Plan Benefit​
GET
/v2/wellnessplanbenefit
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Wellness Plan Benefit.
Type
number
created_at
The epoch time when the Wellness Plan Benefit was created.
Type
number
modified_at
The epoch time when the Wellness Plan Benefit was last modified.
Type
number
active
If true, the Wellness Plan Benefit is active and usable in ezyVet.
Type
boolean
wellnessplan_id
The ID of the Wellness Plan that the Wellness Plan Benefit is associated with.
Type
number
Responses​
A list containing Wellness Plan Benefits.
application/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": [
{
}
]
}
GET
/v2/wellnessplanbenefit
Samples​
Fetches a list of Wellness Plan Benefit Items​
GET
/v2/wellnessplanbenefititem
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
wellness_plan_benefit*
The ID of the Wellness Plan Benefit the Wellness Plan Benefit Item is associated with.
Type
Requirednumber
id
The ID number used by the system to uniquely identify a Wellness Plan Benefit Item.
Type
number
created_at
The epoch time when the Wellness Plan Benefit Item was created.
Type
number
modified_at
The epoch time when the Wellness Plan Benefit Item was last modified.
Type
number
active
If true, the Wellness Plan Benefit Item is active and usable in ezyVet.
Type
boolean
Responses​
A list of Wellness Plan Benefit Items
application/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": [
{
}
]
}
GET
/v2/wellnessplanbenefititem
Samples​
Fetches a list containing Wellness Plan Memberships​
GET
/v2/wellnessplanmembership
Authorizations​
bearerAuth
clientCredentials Flow
Token URL
"https://api.ezyvet.com/v1/oauth/access_token"Scopes:
Parameters​
Query Parameters
id
The ID number used by the system to uniquely identify a Wellness Plan Membership.
Type
number
created_at
The epoch time when the Wellness Plan Membership was created.
Type
number
modified_at
The epoch time when the Wellness Plan Membership was last modified.
Type
number
active
If true, the Wellness Plan Membership is active and usable in ezyVet.
Type
boolean
wellness_plan
The ID of the Wellness Plan this Wellness Plan Membership is associated with.
Type
number
animal_id
The ID of the Animal that is enrolled to this Wellness Plan Membership.
Type
number
resource_id
The ID of the Resource that enrolled the Animal into this Wellness Plan Membership.
Type
number
Responses​
A list of Wellness Plan Memberships
application/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": [
{
}
]
}
GET
/v2/wellnessplanmembership