About Shepherd Technology
Shepherd is a cloud-native veterinary practice-management platform: web app, public API, AI services, payments, and integrations with the major lab, imaging, communications, and pharmacy vendors. The codebase has grown for years and is still actively shipped multiple times per month.
By the numbers
Section titled “By the numbers”- ~1.88Mlines of C#Backend, services, integrations
- ~934Klines of JS / TSAcross 9 web applications
- 32backend modulesBackend services
- 9web applicationsApp, Platform, Forms, Pay, Pet Portal, …
- 4compute tiersApp · OpenAPI · Background · Data/AI
- 15+integrationsLabs, imaging, pharmacy, comms
- Multi-AZPostgreSQLSharded primaries + read replicas
- AWScloudEC2, ECS, S3, ElastiCache, CloudFront
Production architecture
Section titled “Production architecture”Platform overview
Section titled “Platform overview”Compute
Section titled “Compute”Shepherd runs on four distinct compute tiers, all behind an Application Load Balancer fronted by AWS WAF and (for the web app) CloudFront:
- App Servers : the Shepherd web apps (App, Platform, Forms, Group Platform, Insurance Marketplace, Pet Portal, EES, Shepherd Pay) serve clinic users at
app.shepherd.vetand related subdomains. - OpenAPI : the public REST API at
open-api.shepherd.vet/pav2/, used by partner integrations. Its live Swagger UI is hosted at app.shepherd.vet/swagger/. - Background Services : real-time push hubs to the web app, background job runners, and the report runner. EC2-hosted.
- Data & AI Services : a set of containerized services on ECS Fargate (EchoAI, TranscribeAI, Chat, Data Service) that handle ML inference, transcription, and analytical workloads off the request path.
- PostgreSQL in Multi-AZ deployments with read replicas. Clinic data is sharded across physical clusters: a clinic ID resolves through a Group → Logical Shard → Physical Shard chain before it ever touches SQL. The API hides this from callers; see Data model for the model behind the shard.
- ElastiCache (Redis) for session state, real-time fan-out, and hot-path caching.
- S3 for binary objects: PDFs, lab reports, imaging artifacts, voice recordings.
Integrations
Section titled “Integrations”The platform’s value compounds with its integrations. We currently exchange data with:
- Labs & Imaging : IDEXX, Antech, Heska, Zoetis, Asteris, SmartPacs, and others.
- Communications : SMS, email, and Intercom for in-app messaging.
- Pharmacy & inventory : VetSource, MWI, Cubex.
- Payments : Shepherd Pay handles card-present and e-commerce transactions through the gateway.
If you’re building an integration in one of these categories (or a new one), the API Reference and first integration tutorial are the right places to start.
Engineering principles
Section titled “Engineering principles”- Single source of truth for schemas. The live Swagger UI is the authoritative schema reference. This site adds the conceptual framing, tutorials, and code samples around it.
- Tenancy isolation by default. Every API token is scoped to a clinic or clinic group; cross-clinic access requires an explicit grant.
- Backwards compatibility on the public API. Breaking changes ride a new major version; deprecations are announced on the blog before removal.