API reference · Core resources
Animal owners. A client owns one or more patients in a workspace.
Guides:Patients and clientsSync patients from a practice system
An animal owner registered in the workspace. A client can own any number of patients. Clients are shared by every member of the workspace and are also created automatically when patients are synced from a connected practice-management system.
idstringrequiredClient id (UUID), generated by Vetnio.
namestringrequirednullableThe owner's full name, free text. null when not recorded, for example for the placeholder owner created with a patient that had no owner details.
addressstringrequirednullableThe owner's street address, free text. null when not recorded.
zipCodestringrequirednullableThe owner's postal code, free text. null when not recorded.
phoneNumbersarray of stringsrequiredThe owner's phone numbers, stored as given (no normalisation). E.164 format such as +46701234567 is recommended. Empty array when none are recorded.
emailstringrequirednullableThe owner's email address. Stored as given; the format is not validated. null when not recorded.
{
"id": "e1f2a3b4-c5d6-4789-efab-901234567890",
"name": "Alex Morgan",
"address": "12 Harbour Street, Riverside",
"zipCode": "114 51",
"phoneNumbers": [
"+46701234567"
],
"email": "alex.morgan@example.com"
}POST/workspaces/{workspaceId}/clients
Creates a client (owner) in the workspace. All fields are optional and stored as given, without format validation. Not idempotent and not deduplicated: repeating the call creates another client. Note that patients cannot currently be attached to an existing client through the API (creating a patient always creates its own owner).
AcceptsPersonal key
workspaceIdstringrequiredIdentifier of the workspace (clinic) that owns the patients and clients. The caller must be a member of it; patients and clients are shared by all members of the workspace.
namestringoptionalThe owner's full name, free text.
emailstringoptionalThe owner's email address. Stored as given; the format is not validated.
addressstringoptionalThe owner's street address, free text.
zipCodestringoptionalThe owner's postal code, free text.
phoneNumbersarray of stringsoptionalThe owner's phone numbers, stored as given (no normalisation). E.164 format such as +46701234567 is recommended. Defaults to an empty list.
idstringrequiredClient id (UUID), generated by Vetnio.
namestringrequirednullableThe owner's full name, free text. null when not recorded, for example for the placeholder owner created with a patient that had no owner details.
addressstringrequirednullableThe owner's street address, free text. null when not recorded.
zipCodestringrequirednullableThe owner's postal code, free text. null when not recorded.
phoneNumbersarray of stringsrequiredThe owner's phone numbers, stored as given (no normalisation). E.164 format such as +46701234567 is recommended. Empty array when none are recorded.
emailstringrequirednullableThe owner's email address. Stored as given; the format is not validated. null when not recorded.
curl -X POST "https://vetnio.com/api/v2/workspaces/demo-north-clinic/clients" \
-H "Authorization: Bearer $VETNIO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Alex Morgan",
"email": "alex.morgan@example.com",
"address": "12 River Lane",
"zipCode": "114 32",
"phoneNumbers": [
"+46 70 123 45 67"
]
}'{
"id": "9aec18f7-80b9-41bf-9f6f-22b8f568aae6",
"name": "Alex Morgan",
"address": "12 River Lane",
"zipCode": "114 32",
"phoneNumbers": [
"+46 70 123 45 67"
],
"email": "alex.morgan@example.com"
}GET/workspaces/{workspaceId}/clients
Returns every client (owner) in the workspace in one unpaginated response, in no guaranteed order, including the empty placeholder owners created with patients that had no owner details. Clients do not embed their patients; search the patient list by the owner's name to find them (each patient carries clientId).
AcceptsPersonal key
workspaceIdstringrequiredIdentifier of the workspace (clinic) that owns the patients and clients. The caller must be a member of it; patients and clients are shared by all members of the workspace.
clientsarray of objectsrequiredEvery client in the workspace, including empty placeholder owners, in no guaranteed order.
idstringrequiredClient id (UUID), generated by Vetnio.
namestringrequirednullableThe owner's full name, free text. null when not recorded, for example for the placeholder owner created with a patient that had no owner details.
addressstringrequirednullableThe owner's street address, free text. null when not recorded.
zipCodestringrequirednullableThe owner's postal code, free text. null when not recorded.
phoneNumbersarray of stringsrequiredThe owner's phone numbers, stored as given (no normalisation). E.164 format such as +46701234567 is recommended. Empty array when none are recorded.
emailstringrequirednullableThe owner's email address. Stored as given; the format is not validated. null when not recorded.
curl "https://vetnio.com/api/v2/workspaces/demo-north-clinic/clients?searchQuery=Morgan" \
-H "Authorization: Bearer $VETNIO_API_KEY"{
"clients": [
{
"id": "9aec18f7-80b9-41bf-9f6f-22b8f568aae6",
"name": "Alex Morgan",
"address": "12 River Lane",
"zipCode": "114 32",
"phoneNumbers": [
"+46 70 123 45 67",
"+46 8 555 010 20"
],
"email": "alex.morgan@example.com"
},
{
"id": "621fe7da-27c8-4aeb-b953-a24cb63dca80",
"name": null,
"address": null,
"zipCode": null,
"phoneNumbers": [],
"email": null
}
]
}GET/workspaces/{workspaceId}/clients/{clientId}
Returns one client (owner) with its contact details. Returns 404 when no client with this id exists in the workspace.
AcceptsPersonal key
workspaceIdstringrequiredIdentifier of the workspace (clinic) that owns the patients and clients. The caller must be a member of it; patients and clients are shared by all members of the workspace.
clientIdstringrequiredClient (owner) id (UUID) in this workspace. Unknown ids and ids from other workspaces return 404.
idstringrequiredClient id (UUID), generated by Vetnio.
namestringrequirednullableThe owner's full name, free text. null when not recorded, for example for the placeholder owner created with a patient that had no owner details.
addressstringrequirednullableThe owner's street address, free text. null when not recorded.
zipCodestringrequirednullableThe owner's postal code, free text. null when not recorded.
phoneNumbersarray of stringsrequiredThe owner's phone numbers, stored as given (no normalisation). E.164 format such as +46701234567 is recommended. Empty array when none are recorded.
emailstringrequirednullableThe owner's email address. Stored as given; the format is not validated. null when not recorded.
curl "https://vetnio.com/api/v2/workspaces/demo-north-clinic/clients/9aec18f7-80b9-41bf-9f6f-22b8f568aae6" \
-H "Authorization: Bearer $VETNIO_API_KEY"{
"id": "9aec18f7-80b9-41bf-9f6f-22b8f568aae6",
"name": "Alex Morgan",
"address": "12 River Lane",
"zipCode": "114 32",
"phoneNumbers": [
"+46 70 123 45 67"
],
"email": "alex.morgan@example.com"
}PATCH/workspaces/{workspaceId}/clients/{clientId}
Updates the fields present in the body and leaves omitted fields unchanged; phoneNumbers replaces the whole list. Fields cannot be set to null; send an empty string to blank a text field. Send at least one field: an empty body currently fails with 500. Repeating the same request has no further effect. Returns 404 when the client does not exist in the workspace.
AcceptsPersonal key
workspaceIdstringrequiredIdentifier of the workspace (clinic) that owns the patients and clients. The caller must be a member of it; patients and clients are shared by all members of the workspace.
clientIdstringrequiredClient (owner) id (UUID) in this workspace. Unknown ids and ids from other workspaces return 404.
namestringoptionalNew name. The owner's full name, free text.
emailstringoptionalNew email address. The owner's email address. Stored as given; the format is not validated.
addressstringoptionalNew street address. The owner's street address, free text.
zipCodestringoptionalNew postal code. The owner's postal code, free text.
phoneNumbersarray of stringsoptionalComplete new list of phone numbers; replaces the stored list. Send an empty array to remove all. The owner's phone numbers, stored as given (no normalisation). E.164 format such as +46701234567 is recommended.
successbooleanrequiredAlways true; failures are returned as errors.
curl -X PATCH "https://vetnio.com/api/v2/workspaces/demo-north-clinic/clients/9aec18f7-80b9-41bf-9f6f-22b8f568aae6" \
-H "Authorization: Bearer $VETNIO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"phoneNumbers": [
"+46 70 123 45 67",
"+46 8 555 010 20"
]
}'{
"success": true
}DELETE/workspaces/{workspaceId}/clients/{clientId}
Permanently deletes the client (owner) and every patient it owns. Consultations of those patients are kept, with their recordings, transcripts and notes, but lose their patient and owner link. Cannot be undone. Requires the workspace admin or superadmin role (or organization admin access); other members get 403, even for an unknown id. Returns 404 when the client does not exist.
AcceptsPersonal key
workspaceIdstringrequiredIdentifier of the workspace (clinic) that owns the patients and clients. The caller must be a member of it; patients and clients are shared by all members of the workspace.
clientIdstringrequiredClient (owner) id (UUID) in this workspace. Unknown ids and ids from other workspaces return 404.
An empty body on success.
curl -X DELETE "https://vetnio.com/api/v2/workspaces/demo-north-clinic/clients/54d14c91-7e7a-4d10-83be-0285472b8763" \
-H "Authorization: Bearer $VETNIO_API_KEY"{}