The modern GraphQL API for veterinary practice management. Connect your applications to client records, patient data, appointments, billing, and more with type-safe, flexible queries that return exactly the data you need.
Built on the powerful GraphQL specification, our API gives you the flexibility to request precisely the data your application needs. Whether you're building a mobile app, web dashboard, or integrating with existing systems, Vetspire API adapts to your requirements.
Enterprise-grade security with API key authentication and environment isolation.
Interactive examples, comprehensive type definitions, and real-world use cases.
Multiple environments, helpful error messages, and extensive tooling support.
Stay informed about API updates by subscribing to our developer announcement mailing list. We'll notify you about new features, breaking changes, and best practices.
https://api2.vetspire.com/graphql
https://api.staging.vetspire.com/graphql
https://api.sandbox.vetspire.com/graphql
Every request made to our API Endpoint must include an Authorization header which includes your secret API Key. Your secret API Key enables read and write access to your entire organization's data, so keep it safe and secret! It should be treated equivalently to an administrator's password. Your API Key should never be shared in public spaces. You should take extra precaution to ensure that your API keys are never committed to your public git repositories.
On your administrator dashboard, you'll be able to generate API keys for both testing and production use. You can revoke old keys and generate new ones at any time.
For every request made to the API, you should include the API Key in the header of your HTTPS request under "Authorization". Any request made without a valid Authorization header will return a 403 error response. See an example using curl on the right. Furthermore, all API requests must be made over HTTPS.
Every GraphQL request is replied with by a valid JSON string that represents the data being fetched or any errors incurred in the fetching (e.g. if you are unauthorized to access the data being requested).
The easiest way to get started is by querying your organization information. This simple query will help you verify that your API key is working correctly and give you basic information about your Vetspire organization.
All you need to do is make a POST request to the API endpoint with your query and include your API key in the Authorization header.
We currently enforce a maximum query depth of 8. If you exceed this, you'll see the an error code query_depth_limit with a message: Query has depth of 9, which exceeds max depth of 8. This limit helps us ensure we can provide a reliable service to all API users.
If you run into this error, please split up your query into multiple smaller queries or reconsider whether you need all the information you requested.
query GetOrganization { org { id name }}curl https://api.staging.vetspire.com/graphql \ -X POST \ -H "Authorization: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"query": "query GetOrganization { org { id name } }"}'{ "data": { "org": { "id": "1", "name": "Your Clinic Name" } }}Our comprehensive API reference is organized by veterinary practice domains, making it easy to find the functionality you need. Use the sidebar navigation to explore different areas of the API.
Fetch data from your practice management system:
Create, update, and manage practice data:
Each operation in our API follows GraphQL conventions. Here's how to read the reference documentation:
getClients - The operation name
active: Boolean - Optional parameter (no exclamation mark)
limit: Int! - Required parameter (exclamation mark)
[Client] - Returns an array of Client objects
GraphQL Type Notation:
String - A text value
String! - A required text value
[String] - An array of text values
[String!]! - A required array of required text values