Skip to main content
GET
/
api
/
horses
/
:id
Get Horse
curl --request GET \
  --url https://api.example.com/api/horses/:id
{
  "success": true,
  "data": {
    "_id": "507f1f77bcf86cd799439011",
    "seller_id": {
      "_id": "507f191e810c19729de860ea",
      "full_name": "John Smith",
      "email": "[email protected]",
      "phone": "+54 11 1234-5678",
      "seller_profile": {
        "is_verified_badge": true,
        "years_experience": 15,
        "specialty": "Show Jumping"
      }
    },
    "name": "Thunder",
    "age": 8,
    "breed": "Thoroughbred",
    "discipline": "Show Jumping",
    "pedigree": "Sire: Storm Cat, Dam: Winning Colors",
    "location": {
      "country": "Argentina",
      "region": "Buenos Aires",
      "city": "San Isidro",
      "coordinates": {
        "lat": -34.4708,
        "lng": -58.5247
      }
    },
    "price": 45000,
    "currency": "USD",
    "photos": [
      {
        "_id": "65f1a2b3c4d5e6f7g8h9i0j1",
        "url": "https://cdn.horsetrust.com/photos/abc123.jpg",
        "caption": "Thunder at competition",
        "is_cover": true,
        "uploaded_at": "2026-03-01T10:00:00Z"
      }
    ],
    "videos": [
      {
        "_id": "65f1a2b3c4d5e6f7g8h9i0j2",
        "url": "https://youtube.com/watch?v=abc123",
        "embed_url": "https://www.youtube.com/embed/abc123",
        "video_type": "competition",
        "title": "Thunder jumping 1.40m",
        "recorded_at": "2026-02-15T00:00:00Z",
        "uploaded_at": "2026-03-01T10:00:00Z"
      }
    ],
    "status": "active",
    "views_count": 235,
    "created_at": "2026-03-01T10:00:00Z",
    "updated_at": "2026-03-05T15:30:00Z"
  },
  "vet_record": {
    "_id": "65f1a2b3c4d5e6f7g8h9i0j3",
    "horse_id": "507f1f77bcf86cd799439011",
    "review_date": "2026-02-20T00:00:00Z",
    "health_status": "Excellent condition",
    "certificates": [
      {
        "_id": "65f1a2b3c4d5e6f7g8h9i0j4",
        "url": "https://cdn.horsetrust.com/certs/health_cert.pdf",
        "title": "Health Certificate",
        "uploaded_at": "2026-02-20T10:00:00Z"
      }
    ],
    "vaccines": [
      {
        "name": "Influenza",
        "applied_at": "2026-01-15T00:00:00Z",
        "next_due_at": "2026-07-15T00:00:00Z",
        "batch_number": "FLU2026-A123"
      }
    ],
    "validation_status": "validated",
    "notes": "Annual check-up completed. Horse in excellent health."
  }
}

Authentication

Optional - Public endpoint, authentication may provide additional features

Path Parameters

id
string
required
Horse unique identifier (MongoDB ObjectId)

Behavior

  • Automatically increments view count
  • Returns only active listings
  • Includes populated seller information
  • Returns latest validated vet record if available

Response

success
boolean
Indicates if the request was successful
data
object
Horse listing details
_id
string
Horse unique identifier
seller_id
object
Seller information (populated)
_id
string
Seller ID
full_name
string
Seller full name
email
string
Seller email
phone
string
Seller phone number
seller_profile
object
Complete seller profile information
name
string
Horse name
age
number
Horse age in years (0-40)
breed
string
Horse breed
discipline
string
Primary discipline
pedigree
string
Pedigree information
location
object
country
string
required
Country location
region
string
required
Region/state
city
string
City
coordinates
object
lat
number
Latitude
lng
number
Longitude
price
number
Listing price (minimum: 0)
currency
string
Currency code: USD, EUR, ARS, BRL, MXN
photos
array
Array of photos (minimum 3 required)
_id
string
Photo ID
url
string
required
Photo URL
caption
string
Photo caption
is_cover
boolean
Whether this is the cover photo
uploaded_at
string
Upload timestamp
videos
array
Array of videos
_id
string
Video ID
url
string
required
Video URL
embed_url
string
Auto-generated embed URL for YouTube/Vimeo
video_type
string
required
Type: training, competition, other
title
string
Video title
description
string
Video description
recorded_at
string
required
Recording date
uploaded_at
string
Upload timestamp
status
string
Listing status: active, sold, paused, draft
views_count
number
Number of views (incremented on each request)
created_at
string
Creation timestamp
updated_at
string
Last update timestamp
vet_record
object
Latest validated vet record (null if none available)
_id
string
Vet record ID
horse_id
string
Horse ID
review_date
string
Date of veterinary review
health_status
string
Overall health status
certificates
array
Array of certificate documents
vaccines
array
Array of vaccine records
validation_status
string
Status: validated (only validated records returned)
notes
string
Additional notes

Examples

curl -X GET "https://api.horsetrust.com/api/horses/507f1f77bcf86cd799439011" \
  -H "Content-Type: application/json"
{
  "success": true,
  "data": {
    "_id": "507f1f77bcf86cd799439011",
    "seller_id": {
      "_id": "507f191e810c19729de860ea",
      "full_name": "John Smith",
      "email": "[email protected]",
      "phone": "+54 11 1234-5678",
      "seller_profile": {
        "is_verified_badge": true,
        "years_experience": 15,
        "specialty": "Show Jumping"
      }
    },
    "name": "Thunder",
    "age": 8,
    "breed": "Thoroughbred",
    "discipline": "Show Jumping",
    "pedigree": "Sire: Storm Cat, Dam: Winning Colors",
    "location": {
      "country": "Argentina",
      "region": "Buenos Aires",
      "city": "San Isidro",
      "coordinates": {
        "lat": -34.4708,
        "lng": -58.5247
      }
    },
    "price": 45000,
    "currency": "USD",
    "photos": [
      {
        "_id": "65f1a2b3c4d5e6f7g8h9i0j1",
        "url": "https://cdn.horsetrust.com/photos/abc123.jpg",
        "caption": "Thunder at competition",
        "is_cover": true,
        "uploaded_at": "2026-03-01T10:00:00Z"
      }
    ],
    "videos": [
      {
        "_id": "65f1a2b3c4d5e6f7g8h9i0j2",
        "url": "https://youtube.com/watch?v=abc123",
        "embed_url": "https://www.youtube.com/embed/abc123",
        "video_type": "competition",
        "title": "Thunder jumping 1.40m",
        "recorded_at": "2026-02-15T00:00:00Z",
        "uploaded_at": "2026-03-01T10:00:00Z"
      }
    ],
    "status": "active",
    "views_count": 235,
    "created_at": "2026-03-01T10:00:00Z",
    "updated_at": "2026-03-05T15:30:00Z"
  },
  "vet_record": {
    "_id": "65f1a2b3c4d5e6f7g8h9i0j3",
    "horse_id": "507f1f77bcf86cd799439011",
    "review_date": "2026-02-20T00:00:00Z",
    "health_status": "Excellent condition",
    "certificates": [
      {
        "_id": "65f1a2b3c4d5e6f7g8h9i0j4",
        "url": "https://cdn.horsetrust.com/certs/health_cert.pdf",
        "title": "Health Certificate",
        "uploaded_at": "2026-02-20T10:00:00Z"
      }
    ],
    "vaccines": [
      {
        "name": "Influenza",
        "applied_at": "2026-01-15T00:00:00Z",
        "next_due_at": "2026-07-15T00:00:00Z",
        "batch_number": "FLU2026-A123"
      }
    ],
    "validation_status": "validated",
    "notes": "Annual check-up completed. Horse in excellent health."
  }
}

Error Responses

400 - Invalid Horse ID

{
  "success": false,
  "message": "Invalid horse ID"
}

404 - Horse Not Found

{
  "success": false,
  "message": "Horse not found"
}

500 - Server Error

{
  "success": false,
  "message": "Server error"
}

Build docs developers (and LLMs) love