NAV
javascript

Introduction

Welcome to the ezyVet Standard Insurance Integration Beta Reference Page!

The ezyVet Standard Insurance Integration is designed around a RESTful interface and utilizes OAuth 2.0 Client Credentials grant. The webhooks accepts and returns messages in JSON-format.

Getting Started

Setting Up in ezyVet

You will need to contact ezyVet to get setup on the sandbox site. The sandbox is the site API partners will use a for building/testing their integration. ezyVet will provide the partner with the necessary credentials to use the sandbox site.

Configuring the Integration

Settings

Setting Description
Integration This will be the name of the Integration Type, which will be the name of your API partner. E.g. Partner ABC will have the Integration Type of ABC.
For Division The Integration must be for a certain Separation, such that products from the supplier are only updated for that Separation. NOTE: This field is only available for sites which have multiple Separations.
Supplier A new supplier Contact must be created for the Integration and then chosen as the Supplier for the Integration.
API Partner A partner Integration record must be chosen to ensure the API partner is correctly linked to the current Integration record. E.g. If this Integration was for partner ABC, then the partner record for ABC must be chosen.
Access Token Endpoint Endpoint for ezyVet to authenticate and retrieve a valid access token from the partner's web service. The received token will be included in the header of all requests made to the partner's web service.
Policy Endpoint ezyVet will make a POST request to this endpoint when the customer processes a data-sharing request on behalf of the client.
Claim Endpoint ezyVet will make a POST request to this endpoint to process an eClaim request on behalf of the client.
Pre-Approval Endpoint ezyVet will make a POST request to this endpoint to process a Pre-Approval request on behalf of the client.
Fetch Species List Endpoint (optional) ezyVet will send a GET request to this endpoint to fetch a list of available Species.
The partner will need this endpoint set up listening for GET requests from ezyVet.
Client ID Client ID will be used to fetch an access token from the partner's web service.
Client Secret Client Secret will be used to fetch an access token from the partner's web service.

Authentication

Partner Endpoints

Access Token

An endpoint which must be implemented by an API Partner. This endpoint will allow ezyVet to authenticate and use the Partner's web services (if authentication is required).

Fetch an Access Token

Sample Request: Get an Access Token.

var settings = {
  "url": "(Access Token Endpoint)",
  "method": "POST",
  "headers": {
    "content-type": "application/json"
  },
  "data": {
    "client_id": "abc",
    "client_secret": "def",
    "grant_type": "client_credentials"
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});

Response (JSON)

{
  "access_token": "CnKAVqSqp6UBq3Ei17e1UIj2U39UuOQI1i9Db3QT",
  "token_type": "Bearer"
}

HTTP Request

POST (Access Token Endpoint)

Query Parameters

Parameter Type Default Description
client_id string - The client ID.
client_secret string - The client secret.
grant_type string - The grant type.

Response Parameters

Parameter Type Default Description
access_token string - The access token.
token_type string Bearer The type of the access token. (Default of Bearer)

Partner Policy

An endpoint which must be implemented by an API Partner. This endpoint will allow ezyVet to confirm for existing insurance policies for a client and animal GET, or to send contact and animal information for lead generation workflows POST.

Check for an existing Policy

Sample Request: Check for an existing Policy Access Token.

var settings = {
  "url": "(Policy Endpoint)",
  "method": "POST",
  "headers": {
    "content-type": "application/json"
  },
  "data": {
    "offer": {
      "type": "Offer",
      "vet_seen": "2021-12-24T07:30:00+0000"
    },
    "contact": {
        "code": "CA_1234",
        "first_name": "Jeff",
        "last_name": "Michaels",
        "mobile_number": 123415151,
        "home_number": 123415161,
        "email": "email@email.com",
        "street": "123 Street Road",
        "suburb": "Suburb",
        "city": "London",
        "postcode": "SW152SR",
        "country": "GBR"
    },
    "animal": {
        "name": "Zippy",
        "code": "AN_1234",
        "dateofbirth": "2019-02-12",
        "breed": "Tonkinese",
        "species": "Feline",
        "weight": "4.4986",
        "weight_unit": "kg",
        "sex": "F"
    },
    "callback": "https://xyz.ezyvet.com/Callback/UpdateInsuranceOffer/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9kZW1vMTAuZGV2LmV6eXZldC5jb21cLyIsImlhdCI6MTYyNjk1MD19.nLM452-6z1ztJZ8see2TSEgLMP5tWRUMxSCwMCU_zaM"
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});

Response (JSON)

{
  "supplier_status": "not_eligible"
}

HTTP Request

POST (Access Token Endpoint)

Query Parameters

Parameter Type Parent Description
offer json - Policy information
type string offer Policy type
vet_seen int offer Time(UTC ISO8601)
contact json - Contact object
code string contact Human readable code
first_name string contact First name
last_name string contact Last name
mobile_number int contact Raw mobile number content
home_number int contact Raw home number content
email string contact Contact's primary email
street string contact Street Address
suburb string contact Suburb or County
city string contact City
postcode string contact Post/Zip code for address
country string contact 3-letter ISO-3166 country code
animal json - Animal object
name string animal Name
code string animal Code
dateofbirth string animal Date of Birth (Y-m-d)
breed string animal Breed
species string animal Species
weight string animal Weight
weight_unit string animal Weight units
sex string animal Sex shortcode eg: 'F' for Female
callback string - The callback URL

Response Parameters

Parameter Type Default Description
supplier_status string pending Status of the policy offer

Supplier Status values

Value Description
pending Pending
already_policy_holder Already policy holder
not_eligible Not Eligible
eligible Eligible
exception Exception/Error
offer_declined Offer Declined
offer_accepted Offer Accepted
offer_cancelled Offer Cancelled
offer_upgraded Offer Converted
offer_expired Offer Expired

Partner Claim

An endpoint which must be implemented by an API Partner. This endpoint will allow ezyVet to send insurance claims for a client and animal along with the contact and animal information for the Claim and Benefit process workflows.

Sending an eClaim

Sample Request: Sending an eClaim Access Token.

var settings = {
    "url": "(eClaim Endpoint)",
    "method": "POST",
    "headers": {
        "content-type": "application/json"
    },
    "data": {
        "status": "claim_generated",
        "callback": "https://xyz.ezyvet.com/Callback/UpdateClaimRequest/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvZXo1MzY5OS51c3cyLnN0Zy5lenl2ZXQuY29tXC8iLCJpYXQiOjE2Mjk4MTIxMTAsImRhdGEiOnsiY2xhaW1faWQiOiIxMSJ9fQ.B8Gg6Gzkr4ih7lxp4MUGdvPJCOKY6SvcAlyoSJ-ah9Q",
        "config": {
            "InfoFromPolicyHolder": {
                "PolicyDetails": {
                    "PolicyNumber": "INS_123456789",
                    "PolicyholderName": "Owner, Owner",
                    "Address": "",
                    "Postcode": "",
                    "Country": "",
                    "AddressDifferentFromPolicy": "true",
                    "DaytimePhone": null,
                    "EveningPhone": null,
                    "MobilePhone": null,
                    "EmailAddress": null,
                    "PreferredContactBy": "MobilePhone",
                    "AnimalInsuredWithCurrentProviderBefore": "true",
                    "OtherInsurersCoveringAnimal": []
                },
                "Conditions": [
                    {
                        "DateFirstNoticed": "2019-07-01",
                        "DateOfDeath": "2019-07-01",
                        "DeathDueToIllnessInjury": "false",
                        "Description": "Continuation eosinophilic enteritis",
                        "RepeatIllnessInjury": "true"
                    }
                ],
                "AnimalDetails": {
                    "Name": "Patient Name",
                    "PedigreeName": "",
                    "Species": "Feline (Cat)",
                    "Breed": "Abyssinian",
                    "DateOfBirth": "2017-08-25",
                    "Gender": "M",
                    "Colour": "Apricot",
                    "MicrochipNumber": "123456789"
                },
                "Financial": {
                    "PayVet": true
                }
            },
            "InfoFromVet": {
                "Miscellaneous": {
                    "AnimalRegistered": "2021-08-25",
                    "LastVaccination": "1970-01-01",
                    "MicrochipNumber": "",
                    "GeneralRemarks": "",
                    "ClaimHandler": {
                        "Name": "Vet Name",
                        "Phone": "",
                        "Email": "vet@xyz.com"
                    }
                },
                "Conditions": [
                    {
                        "ConditionCode" : "",
                        "DiagnosisOrSigns": "signs",
                        "ConsultationNotes" : "",
                        "Remarks" : "",
                        "ClaimContinuation": "false",
                        "ClaimReferenceNumber": "CLAIM-IC11",
                        "Started": "2021-08-25",
                        "DeathOrEuthanasia": "false",
                        "PutDownByRecomendation": "false",
                        "OngoingCondition": false,
                        "CremationCost": 0,
                        "EuthanasiaReason": "",
                        "TreatmentDates": {
                            "DateFrom": "2021-08-25",
                            "DateTo": "2021-08-25"
                        },
                        "SeenBeforeRelated": {
                            "Description": "",
                            "TreatmentDates": {
                                "DateFrom": "",
                                "DateTo": ""
                            }
                        },
                        "HouseVisitAndOOH": {
                            "HouseVisit": "false",
                            "HouseVisitReason": "",
                            "OutOfHours": "false",
                            "OutOfHoursReason": ""
                        },
                        "Financial": {
                            "TotalDiscountExTax": -1.2,
                            "TotalExTax": 10.4,
                            "TotalIncTax": 10.4,
                            "Tax": 0,
                            "Invoices": [
                                {
                                    "Date": "2021-08-25",
                                    "InvoiceNumber": "123456",
                                    "Items": [
                                        {
                                            "Description": "Trivetrin 100ml",
                                            "Type": "TestMedications - Injectable",
                                            "AmountExTax": 10.4,
                                            "Quantity": 1
                                        }
                                    ],
                                    "TotalDiscountExTax": -1.2,
                                    "TotalExTax": 10.4,
                                    "TotalIncTax": 10.4,
                                    "Tax": 0
                                }
                            ]
                        }
                    }
                ],
                "Vet": {
                    "VetSurname": "<VET_SURNAME>",
                    "VetForenames": "",
                    "VetPosition": "",
                    "VetEmailAddress": "vet@xyz.com",
                    "PracticeName": "<PRACTICE_NAME>",
                    "PracticeID": "112233",
                    "PracticeAddress": "<PRACTICE_ADDRESS>",
                    "PracticePostcode": "111111",
                    "PracticePhone": null
                },
                "Attachments": [
                    {
                        "AttachmentID": null,
                        "ContentLength": "75763",
                        "ContentType": "application/pdf",
                        "ContentUploadMethod": "base64",
                        "ContentBinary": "data:application/pdf;base64,<BASE64_ENCODED_STRING>",
                        "Description": "Animal_Clinical_Summary.pdf"
                    },
                    {
                        "AttachmentID": null,
                        "ContentLength": "75825",
                        "ContentType": "application/pdf",
                        "ContentUploadMethod": "base64",
                        "ContentBinary": "data:application/pdf;base64,<BASE64_ENCODED_STRING>",
                        "Description": "Consult_Summary.pdf"
                    },
                    {
                        "AttachmentID": null,
                        "ContentLength": "73271",
                        "ContentType": "application/pdf",
                        "ContentUploadMethod": "base64",
                        "ContentBinary": "data:application/pdf;base64,<BASE64_ENCODED_STRING>",
                        "Description": "Consult_Invoice.pdf"
                    }
                ],
                "Referrals": [],
                "AnimalClinicalHistory": []
            }
        }
    }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});

Response (JSON)

200 OK

Unsuccessful Response (JSON)

{
    "code": "400",
    "message": "Bad request. Please send a valid Animal name."
}

HTTP 4xx e.g. 400

Optional Response (JSON)

{
  "Status": "(Please see Claim Status values provided)"
} 

200 OK

HTTP Request

POST (Access Token Endpoint)

Query Parameters

InfoFromPolicyHolder

Contains information about the contact, animal and conditions determined by the owner.

PolicyDetails Information about the contact/pet owner the claim is for.

Parameter Type Parent Description
PolicyNumber string animal Insurance policy number for the animal
PolicyholderName string contact Animal's owner name
Address string contact Address for the pet owner
Postcode string contact Postcode for the pet owner
Country string contact 3-letter ISO-3166 country code
AddressDifferentFromPolicy bool contact Set to 'true' if address is different then mentioned on the policy
DaytimePhone string contact Daytime contact number
EveningPhone string contact Evening contact number
MobilePhone string contact Mobile contact number
EmailAddress string contact Owners's email address
PreferredContactBy string contact Owners's preferred contact method
AnimalInsuredWithCurrentProviderBefore bool contact Set to 'true' if previously insured
OtherInsurersCoveringAnimal json animal List of other insurers covering this animal

Conditions Can be a list of information based upon the animal and the reason they were brought to the vet clinic.

Parameter Type Parent Description
DateFirstNoticed date - Date when the condition was first noticed
DateOfDeath date - Date of Death if applicable
DeathDueToIllnessInjury bool - Set to 'true' if death is due to an illness/injury
Description string - Textual description of the condition
RepeatIllnessInjury bool - Set to 'true' if this is a repeat illness/injury

AnimalDetails Information about the animal the claim is for.

Parameter Type Parent Description
Name string animal Animal name
PedigreeName string animal Animal pedigree name
Species string animal Animal species
Breed string animal Animal breed
DateOfBirth date animal Animal Date of birth
Gender string animal Animal gender
Colour string animal Animal colour
MicrochipNumber string animal Animal microchip number

Financial Information regarding whether the claim should be paid to the clinic directly.

Parameter Type Parent Description
PayVet bool claim Set to true if the clinic should be paid directly

InfoFromVet

Miscellaneous This contains general information about the animal and the person who is processing the claim. The ClaimHandler doesn’t have to be the case owner for the consults that are being claimed for.

Parameter Type Parent Description
AnimalRegistered date animal Date the animal was registered
MicrochipNumber string animal Animal's microchip number
GeneralRemarks string animal Remarks from the Vet
ClaimHandler json vet Name/Phone/Email of the Vet

Conditions These are determined by the consults that are linked to the claim inside of ezyVet. From there the information is broken down to specify information about the reason for the hospital visit and what/why the consult resulted to.

Parameter Type Parent Description
ConditionCode string consult Code relating to the condition
DiagnosisOrSigns string consult Any diagnosis/signs detected
ConsultationNotes string consult Vet's consultation notes
Remarks string consult Vet's remarks
ClaimContinuation bool consult 'false' by default
ClaimReferenceNumber string consult Reference number for the Claim
Started date consult Date the condition started
DeathOrEuthanasia bool consult Set to 'true' if Euthanised
PutDownByRecomendation bool consult Set to 'true' if Euthanisation was recommended
OngoingCondition bool consult Set to 'true' if this is a recurring condition
CremationCost int consult Cost for the Cremation if applicable
EuthanasiaReason string consult Reason for Euthanisation
TreatmentDates json consult Date range for which this animal received treatment
SeenBeforeRelated json consult Details if it relates to a previous consultation
HouseVisitAndOOH json consult Details in case it is a house visit call
Financial json invoice Consists of an object of financial information. This will include the Invoice details(Invoice number/Date/Items invoiced)

Vet Information about the Vet who was the case owner for the consults inside. This also contains information about the Vet Clinic too.

Parameter Type Parent Description
VetSurname string vet Vet's Surname
VetForenames string vet Vet's Forenames
VetPosition string vet Vet's Position
VetEmailAddress string vet Vet's Email address
PracticeName string - Name of the clinical practice
PracticeID string - Id of the clinical practice
PracticeAddress string - Address for the clinical practice
PracticePostcode string - Postcode for the clinical practice
PracticePhone string - Contact number for the clinical practice

Attachments This is a list of attachments that are linked with the claim and the automatically generated pdf’s for the clinical summaries and invoices that are on the claim. These contain a base64 of the content for the request that is sent to the 3rd party.

Parameter Type Parent Description
AttachmentID string - Id for the Attachment
ContentLength string - Size of the attachment file in bytes
ContentType string - Document mime-type (application/pdf,image/png)
ContentUploadMethod string - Upload format for the file
ContentBinary string - Actual file content in string format
Description string - Name of file

Claim Status values

Value Description
claim_generated Claim has been generated.
claim_invalid Claim data sent is not accepted by insurer.
claim_received Claim has been received by the insurance supplier but no assessment has been made.
claim_processing Claim is actively being looked at by insurer.
claim_needs_info Claim needs further information. Communication necessary between vet and insurer.
claim_approved Claim has been approved by the insurer.
claim_settled Claim settlement payment has been made.
claim_declined Claim is declined by insurer.
claim_acknowledged Claim is Acknowledged
claim_cancelled Claim is cancelled by ezyVet.

Partner Pre-Approval

An endpoint which must be implemented by an API Partner. This endpoint will allow ezyVet to send an insurance pre-approval. A preapproval is an insurance claim being filed for an estimate/quotation before the client has been billed or treatment has started on the animal.

Sending a Preapproval

Sample Request (JSON)

var settings = {
    "url": "Preapproval Endpoint",
    "method": "POST",
    "headers": {
        "content-type": "application/json"
    },
    "body": {
        "status": "preapproval_generated",
        "callback": "https://site_id.ezyvet.com/Callback/UpdateInsuranceRecord/uh75h72n7393o44.uer9293j3nunu9.io31kedxme",
        "config": {
            "InfoFromPolicyHolder": {
                "PolicyDetails": {
                    "PolicyNumber": "INS_123456789",
                    "PolicyholderName": "Owner, Owner",
                    "Address": "",
                    "Postcode": "",
                    "AddressDifferentFromPolicy": "true",
                    "DaytimePhone": null,
                    "EveningPhone": null,
                    "MobilePhone": null,
                    "EmailAddress": null,
                    "PreferredContactBy": "MobilePhone",
                    "AnimalInsuredWithCurrentProviderBefore": "true",
                    "OtherInsurersCoveringAnimal": []
                },
                "AnimalDetails": {
                    "Name": "Patient Name",
                    "PedigreeName": "",
                    "Species": "Feline (Cat)",
                    "Breed": "Abyssinian",
                    "DateOfBirth": "2017-08-25",
                    "Gender": "M",
                    "Colour": "Apricot",
                    "MicrochipNumber": "123456789"
                },
                "Conditions": [{
                    "DateFirstNoticed": "",
                    "DeathDueToIllnessInjury": "",
                    "RepeatIllnessInjury": "",
                    "DateOfDeath": "2022-05-01",
                    "Description": "Animal Condition - Vet's Remark"
                }]
            },
            "InfoFromVet": {
                "Conditions": [{
                    "Remarks": "",
                    "Financial": {
                        "TotalDiscountExTax": 0,
                        "TotalExTax": 10.4,
                        "TotalIncTax": 10.4,
                        "Tax": 0,
                        "Quotations": [{
                            "Date": "2021-08-25",
                            "QuotationNumber": "123456",
                            "Items": [{
                                "Description": "Trivetrin 100ml",
                                "Type": "Test Medications - Injectable",
                                "Quantity": 1,
                                "AmountExTax": 10.4,
                                "Tax": 10.4,
                                "DiscountExTax": 0
                            }],
                            "TotalDiscountExTax": 0,
                            "TotalExTax": 10.4,
                            "TotalIncTax": 10.4,
                            "Tax": 0
                        }]
                    }
                }],
                "ClaimHandler": {
                    "Name": "Ezy Support",
                    "Phone": "",
                    "Email": "support@ezyvet.com"
                }
            },
            "Vet": {
                "VetSurname": "Ezy Support",
                "VetForenames": "",
                "VetPosition": "",
                "VetEmailAddress": "support@ezyvet.com",
                "PracticeName": "devs-Development",
                "PracticeID": "master",
                "PracticeAddress": "19\nHopetown Street\nTBC\nAuckland, 1010, Auckland",
                "PracticePostcode": "1010",
                "PracticePhone": null
            }
        }
    }
}

Response (JSON)

200 OK

Unsuccessful Response (text/html)

Error message. e.g. ("Cannot process this request.")

HTTP 4xx e.g. 400

Optional Response (JSON)

{
  "Status": "The status given by the Partner",
  "Remarks": "Any remarks given by the Partner"
} 

200 OK

Query Parameters

InfoFromPolicyHolder

Contains information about the contact, animal and conditions determined by the owner.

PolicyDetails Information about the contact/pet owner the preapproval is for.

Parameter Type Parent Description
PolicyNumber string animal Insurance policy number for the animal
PolicyholderName string contact Animal's owner name
Address string contact Address for the pet owner
Postcode string contact Postcode for the pet owner
AddressDifferentFromPolicy bool contact Set to 'true' if address is different then mentioned on the policy
DaytimePhone string contact Daytime contact number
EveningPhone string contact Evening contact number
MobilePhone string contact Mobile contact number
EmailAddress string contact Owners's email address
PreferredContactBy string contact Owners's preferred contact method
AnimalInsuredWithCurrentProviderBefore bool contact Set to 'true' if previously insured
OtherInsurersCoveringAnimal json animal List of other insurers covering this animal

AnimalDetails Information about the animal the preapproval is for.

Parameter Type Parent Description
Name string animal Animal name
PedigreeName string animal Animal pedigree name
Species string animal Animal species
Breed string animal Animal breed
DateOfBirth date animal Animal Date of birth. YYYY-MM-DD
Gender string animal Animal gender
Colour string animal Animal colour
MicrochipNumber string animal Animal microchip number

Conditions Can be a list of information based upon the animal and the reason they were brought to the vet clinic.

Parameter Type Parent Description
DateFirstNoticed date - Date when the condition was first noticed. Format is year/month/day
DeathDueToIllnessInjury bool - Set to 'true' if death is due to an illness/injury
RepeatIllnessInjury bool - Set to 'true' if this is a repeat illness/injury
DateOfDeath date animal Date of Death if applicable. Format is year/month/day
Description string - Textual description of the condition / Vet Remarks

InfoFromVet

Conditions These are determined by the consults that are linked to the preapproval inside of ezyVet. From there the information is broken down to specify information about the reason for the hospital visit and what/why the consult resulted to.

Parameter Type Parent Description
Remarks string consult Vet's remarks
Financial json invoice Consists of an object of financial information. This will include the Invoice details(Invoice number/Date/Items invoiced)
ClaimHandler json vet Consists of claim handler details

Vet

Contains information about the assigned vet/user creating the preapproval

Parameter Type Parent Description
VetSurname string vet Vet's Forenames
VetPosition string vet Vet's Position
VetEmailAddress string vet Vet's email
PracticeName string - Practice Name
PracticeID string - Practice ID
PracticeAddress string - Practice Address
PracticePostcode string - Practice Postcode
PracticePhone string - Practice Phone

PreApproval Status values

Value Description
preapproval_generated Pre-Approval has been generated.
preapproval_invalid Pre-Approval data sent is not accepted by insurer.
preapproval_received Pre-Approval has been received by the insurance supplier but no assessment has been made.
preapproval_processing Pre-Approval is actively being looked at by insurer.
preapproval_needs_info Pre-Approval needs further information. Communication necessary between vet and insurer.
preapproval_covered Pre-Approval will be covered by insurer.
preapproval_not_covered Pre-Approval will not be covered by insurer.
preapproval_error Pre-Approval is in an error state
preapproval_cancelled Pre-Approval is cancelled by ezyVet.

Partner Species/Breed

An endpoint which can be implemented by an API Partner. This endpoint will allow ezyVet to fetch a list of Animal Species.

Fetch Partner Species/Breed

Sample Request: Get a list of Animal Species.

var settings = {
  "url": "(Fetch Species List Endpoint)",
  "method": "GET",
  "headers": {
    "content-type": "application/json",
    "authorization": "Bearer token12345 (only if access token required)"
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});

Response (JSON)

{
  "species": [
    {
      "code": "CANINE",
      "name": "Canine",
      "breeds": [
        {
          "code": "LABRADOR_RETRIEVER",
          "name": "Labrador Retriever"
        },
        {
          "code": "PUG",
          "name": "Pug"
        }
      ]
    },
    {
      "code": "EQUINE",
      "name": "Equine",
      "breeds": [
        {
          "code": "BELGIAN_HORSE",
          "name": "Belgian Horse"
        },
        {
          "code": "THOROUGHBRED",
          "name": "Thoroughbred"
        }
      ]
    }
  ]
}

HTTP Request

GET (Fetch Species List Endpoint)

Response Parameters

Parameter Type Default Parent Description
species list - - A List of species.
code string - species The code of the species.
name string - species The name of the species.
breeds list - species A List of breeds related to the species.
code string - breeds The code of the breed.
name string - breeds The name of the breed.

CallBack Urls

Policy Callback

When ezyVet POSTs a request to the Partner Policy endpoint, ezyVet will include a Callback URL.
The partner shall use this Callback URL to POST a request to ezyVet to update the status of the policy offer and update the Animal's Insurance Policy Number.

Sample Request: Using Callback URL

var settings = {
  "url": "(ezyVet Callback URL)",
  "method": "POST",
  "headers": {
    "content-type": "application/json"
  },
  "data": {
    "supplier_status": "eligible",
    "insurance_number": "123456789"
  }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});

Response (JSON)

200 OK

Unsuccessful Response (text/html)

Error message. e.g. ("Cannot process request.")

HTTP 4xx e.g. 400

HTTP Request

POST (Callback URL)

Callback Urls will have the following structure:

https://<site domain>/Callback/UpdateInsuranceOffer/<unique hash>

Query Parameters

Parameter Type Description
supplier_status string Status of the policy offer
insurance_number string Animal's Insurance Number

Supplier Status values

Value Description
pending Pending
already_policy_holder Already policy holder
not_eligible Not Eligible
eligible Eligible
exception Exception/Error
offer_declined Offer Declined
offer_accepted Offer Accepted
offer_cancelled Offer Cancelled
offer_upgraded Offer Converted
offer_expired Offer Expired

Claim Callback

When ezyVet POSTs a request to the Partner eClaim endpoint, ezyVet will include a Callback URL.
The partner shall use this Callback URL to POST a request to ezyVet to update the status of the claim (mandatory) and to send back any remittance or benefit financial information for processing the Claim.

Sample Request: Using Callback URL

var settings = {
    "url": "(ezyVet Callback URL)",
    "method": "POST",
    "headers": {
        "content-type": "application/json"
    },
    "data": {
        "Status": "claim_settled", <required>
        "Financial": { <optional>
            "Benefit": { <optional>
                "BenefitAmount": "32.99", <required if object provided>
                "Remarks": "Benefit Remarks", <optional>
                "Description": "Benefit Description" <optional> 
            },
            "VetFee": { <optional>
                "FeeIncludingTax": "2.20", <required if object provided>
                "Tax": "0.20", <required if object provided>
                "Remarks": "Standard Fee for Claim Processing" <optional>
            },
            "RemittanceRecords": [ <optional>
                {
                    "RemittanceNumber": "ABC123456789", <required if object provided>
                    "PaidAmount": "30.25" <required if object provided>
                }
            ]
        }
    }
}

$.ajax(settings).done(function (response) {
  console.log(response);
});

Response (JSON)

200 OK

Unsuccessful Response (JSON)

{
    "code": "400",
    "message": "The request was malformed, the action cannot be executed."
}

HTTP 4xx e.g. 400

HTTP Request

POST (Callback URL)

Callback Urls will have the following structure:

https://<site domain>/Callback/UpdateClaimRequest/<unique hash>

Query Parameters

Parameter Type Required? Description
Status string required The claim status update with the text according to the list below
Financial json optional General container for financial updates
Financial>>Benefit json optional Containing benefit amounts and potential remarks. Can be used for all claims but not tracked. Remarks are currently not tracked in ezyVet but might be logged.
-- BenefitAmount float(2 decimals) required if object provided Benefit amount
-- Remarks string optional Additional comments relating to the Benefit amount
-- Description string optional Details on benefit amount, displays on the ezyVet UI
Financial>>VetFee json optional If present, a fee levied against clinics for each claim processed. Remarks and Tax amounts are currently not tracked in ezyVet but might be logged.
-- FeeIncludingTax float(2 decimals) required if object provided Total Vet Fee levied including tax
-- Tax float(2 decimals) required if object provided Tax amount for the Vet Fee
-- Remarks string required Any textual information relating to the VetFee amount
Financial>>RemittanceRecords json optional List of bank transactions and their reference number when paying the insurance payments. Remittance records are only encouraged when the clinic is paid, which is needed for the reconciliation process. Paying clients directly does not warrant a remittance record.
-- RemittanceNumber string required if object provided Remittance reference number
-- PaidAmount float(2 decimals) required if object provided Remittance amount

Claim Status values

Value Description
claim_generated Claim has been generated.
claim_invalid Claim data sent is not accepted by insurer.
claim_received Claim has been received by the insurance supplier but no assessment has been made.
claim_processing Claim is actively being looked at by insurer.
claim_needs_info Claim needs further information. Communication necessary between vet and insurer.
claim_approved Claim has been approved by the insurer.
claim_settled Claim settlement payment has been made.
claim_declined Claim is declined by insurer.
claim_acknowledged Claim is Acknowledged
claim_cancelled Claim is cancelled by ezyVet.

Preapproval Callback

When ezyVet POSTs a request to the Partner preapproval endpoint, ezyVet will include a Callback URL.
The partner shall use this Callback URL to POST a request to ezyVet to update the status of the preapproval offer .

Sample Request: Using Callback URL

var settings = {
    "url": "(ezyVet Callback URL)",
    "method": "POST",
    "headers": {
        "content-type": "application/json"
    },
    "data": {
        "Status": "preapproval_generated",
        "Remarks": "nothing to add" <optional>
    }
}

$.ajax(settings).done(function (response) {
    console.log(response);
});

Response (JSON)

200 OK

Unsuccessful Response (JSON)

{
    "code": "400",
    "message": "The request was malformed, the action cannot be executed."
}

HTTP 4xx e.g. 400

HTTP Request

POST (Callback URL)

Callback Urls will have the following structure:

https://<site domain>/Callback/UpdateInsuranceRecord/<unique hash>

Query Parameters

Parameter Type Required? Description
Status string required The preapproval status update with the text according to the list below
Remarks string optional Any textual information relating to the preapproval

PreApproval Status values

Value Description
preapproval_generated PreApproval has been generated.
preapproval_invalid PreApproval data sent is not accepted by insurer.
preapproval_received PreApproval has been received by the insurance supplier but no assessment has been made.
preapproval_processing PreApproval is actively being looked at by insurer.
preapproval_needs_info PreApproval needs further information. Communication necessary between vet and insurer.
preapproval_covered Preapproval will be covered by insurer.
preapproval_not_covered Preapproval will not be covered by insurer.
preapproval_error Preapproval is in an error state
preapproval_cancelled PreApproval is cancelled by ezyVet.

Sign Up Callback

When ezyVet POSTs a request to the Partner signup endpoint, ezyVet will include a Callback URL.
The partner shall use this Callback URL to POST a request back to ezyVet to update the credentials for the Sign Up request.

Sample Request: Using Callback URL

var settings = {
    "url": "(ezyVet Callback URL)",
    "method": "POST",
    "headers": {
        "content-type": "application/json"
    },
    "data": {
        "client_id": "<CLIENTID>",
        "client_secret": "<CLIENTSECRET>",
        "grant_type": "client_credentials"
    }
}

$.ajax(settings).done(function (response) {
    console.log(response);
});

Response (JSON)

200 OK

Unsuccessful Response (JSON)

{
    "code": "400",
    "message": "The request was malformed, the action cannot be executed."
}

HTTP 4xx e.g. 400

HTTP Request

POST (Callback URL)

Callback Urls will have the following structure:

https://<site domain>/Callback/CompleteSignUp/<unique hash>

Query Parameters

Parameter Type Required? Sample Value Description
client_id string required 6779ef20e75817b79602 The clientid value for the credentials
client_secret string required Gfiei7dkducoFqNifNqc5L5Q66P95ZqdlIkJoMOU The client secret value for the credentials
grant_type string required client_credentials The grant type value. We will only accept value 'client_credentials'

Features

Errors