Adding Pets via API

Create new pet profiles using PawPlacer's API

You can add new pet profiles to your PawPlacer account using the API.

Note: This feature is in beta and may be subject to changes. DO NOT use this feature in production environments until it is officially released. Please contact us with any feedback or issues.

Endpoint

POST /api/pets

Authentication

All API requests require an API key, which can be retrieved from your account settings. Include the API key in the request headers as follows:

"x-api-key": process.env.PAWPLACER_API_KEY

Request Body

Required Fields

The request will fail if any of these fields are missing or do not meet the specified types. The error message will indicate which field is causing the issue.

FieldTypeDescription
namestringPet's name
speciesSpeciesSee types below
age_categoryAgeSee types below
sexSexSee types below
sizeSizeSee types below
statusStatusSee types below
healthHealthSee types below

Optional Fields

FieldTypeDescription
adoption_feestringAdoption fee amount
age_monthsstringAge in months
age_yearsstringAge in years
bad_withCompatibility[]See types below
breedBreed[]See types below
colorColor[]See types below
descriptionstringDescription of the pet
good_withCompatibility[]See types below
image_urlsstring[]List of image URLs. We strongly recommend .webp
microchip_idstringMicrochip ID
spayedbooleanWhether the pet is spayed/neutered
temperamentsTemperament[]See types below

Types

Required

TypeValues
Ageyoungest, young, adult, senior
Healthunknown, poor, good, great
Sexmale, female
SizexSmall, small, medium, large, xLarge
Speciesdog, cat, rabbit
Statusadopted, archived, available, deceased, escaped, euthanized, fostered, hold, intake, lost, medicalHold, medicalTreatment, other, pending, quarantine, recoveryPeriod, returnedToOwner, stray, surrendered, transferred

Optional (fixed values)

The values for these fields are fixed and cannot be modified. If you provide a value that does not match the list, the request will fail.

TypeValues
CompatibilityactiveLifestyle, cats, disabledMental, disabledPhysical, dogs, families, firstTimeOwners, frequentTravelers, kids, otherPets, outdoorsLiving, sedentaryLifestyle, seniors, smallApartments
Temperamentaffectionate, aggressive, cuddly, curious, docile, energetic, fearful, gentle, independent, loyal, mischievous, moody, playful, protective, quiet, rough, shy, smart, social, stubborn, vocal

Optional (dynamic values)

You may upload any values for these fields, but we strongly recommend using the values provided below for consistency, better search results, and compatibility with PetFinder's API.

TypeValues
ColorAgouti, Albino, Black & White / Tuxedo, Black Sable, Black, Blue / Gray, Blue Cream, Blue Point, Brown / Chocolate, Buff / Tan / Fawn, Buff & White, Calico, Champagne, Chocolate Point, Cinnamon, Cream / Ivory, Cream Point, Cream, Dilute Calico, Dilute Tortoiseshell, Flame Point, Gray / Blue / Silver, Gray & White, Lilac Point, Lilac, Orange / Red, Orange & White, Sable, Seal Point, Silver Marten, Smoke, Tabby (Brown / Chocolate), Tabby (Buff / Tan / Fawn), Tabby (Gray / Blue / Silver), Tabby (Leopard / Spotted), Tabby (Orange / Red), Tabby (Tiger Striped), Tan, Torbie, Tortoiseshell, White
BreedSee breeds below

Breed

TypeValues
DogAffenpinscher, Afghan Hound, Airedale Terrier, Akbash, Akita, Alaskan Malamute, American Bulldog, American Bully, American Eskimo Dog, American Foxhound, American Hairless Terrier, American Staffordshire Terrier, American Water Spaniel, Anatolian Shepherd, Appenzell Mountain Dog, Aussiedoodle, Australian Cattle Dog / Blue Heeler, Australian Kelpie, Australian Shepherd, Australian Terrier, Basenji, Basset Hound, Beagle, Bearded Collie, Beauceron, Bedlington Terrier, Belgian Shepherd / Laekenois, Belgian Shepherd / Malinois, Belgian Shepherd / Sheepdog, Belgian Shepherd / Tervuren, Bernedoodle, Bernese Mountain Dog, Bichon Frise, Bloodhound, Blue Lacy, Bluetick Coonhound, Boerboel, Bolognese, Border Collie, Border Terrier, Borzoi, Boston Terrier, Bouvier des Flandres, Boxer, Boykin Spaniel, Briard, Brittany Spaniel, Brussels Griffon, Bull Terrier, Bullmastiff, Cairn Terrier, Canaan Dog, Cane Corso, Cardigan Welsh Corgi, Carolina Dog, Catahoula Leopard Dog, Cattle Dog, Caucasian Sheepdog / Caucasian Ovtcharka, Cavachon, Cavalier King Charles Spaniel, Cavapoo, Chesapeake Bay Retriever, Chihuahua, Chinese Crested Dog, Chinese Foo Dog, Chinook, Chiweenie, Chow Chow, Cirneco dell'Etna, Clumber Spaniel, Cockapoo, Cocker Spaniel, Collie, Coonhound, Corgi, Coton de Tulear, Curly-Coated Retriever, Dachshund, Dalmatian, Dandie Dinmont Terrier, Doberman Pinscher, Dogo Argentino, Dogue de Bordeaux, Dutch Shepherd, English Bulldog, English Cocker Spaniel, English Coonhound, English Foxhound, English Pointer, English Setter, English Shepherd, English Springer Spaniel, English Toy Spaniel, Entlebucher, Eskimo Dog, Feist, Field Spaniel, Fila Brasileiro, Finnish Lapphund, Finnish Spitz, Flat-Coated Retriever, Fox Terrier, Foxhound, French Bulldog, Galgo Spanish Greyhound, German Pinscher, German Shepherd Dog, German Shorthaired Pointer, German Spitz, German Wirehaired Pointer, Giant Schnauzer, Glen of Imaal Terrier, Golden Retriever, Goldendoodle, Gordon Setter, Great Dane, Great Pyrenees, Greater Swiss Mountain Dog, Greyhound, Hamiltonstovare, Harrier, Havanese, Hound, Hovawart, Husky, Ibizan Hound, Icelandic Sheepdog, Illyrian Sheepdog, Irish Setter, Irish Terrier, Irish Water Spaniel, Irish Wolfhound, Italian Greyhound, Jack Russell Terrier, Japanese Chin, Jindo, Kai Dog, Karelian Bear Dog, Keeshond, Kerry Blue Terrier, Kishu, Klee Kai, Komondor, Kuvasz, Kyi Leo, Labradoodle, Labrador Retriever, Lakeland Terrier, Lancashire Heeler, Leonberger, Lhasa Apso, Lowchen, Lurcher, Maltese, Maltipoo, Manchester Terrier, Maremma Sheepdog, Mastiff, McNab, Miniature Bull Terrier, Miniature Dachshund, Miniature Pinscher, Miniature Poodle, Miniature Schnauzer, Mixed Breed, Morkie, Mountain Cur, Mountain Dog, Munsterlander, Neapolitan Mastiff, New Guinea Singing Dog, Newfoundland Dog, Norfolk Terrier, Norwegian Buhund, Norwegian Elkhound, Norwegian Lundehund, Norwich Terrier, Nova Scotia Duck Tolling Retriever, Old English Sheepdog, Otterhound, Papillon, Parson Russell Terrier, Patterdale Terrier / Fell Terrier, Pekingese, Pembroke Welsh Corgi, Peruvian Inca Orchid, Petit Basset Griffon Vendeen, Pharaoh Hound, Pit Bull Terrier, Plott Hound, Pointer, Polish Lowland Sheepdog, Pomeranian, Pomsky, Poodle, Portuguese Podengo, Portuguese Water Dog, Presa Canario, Pug, Puggle, Puli, Pumi, Pyrenean Shepherd, Rat Terrier, Redbone Coonhound, Retriever, Rhodesian Ridgeback, Rottweiler, Rough Collie, Saint Bernard, Saluki, Samoyed, Sarplaninac, Schipperke, Schnauzer, Schnoodle, Scottish Deerhound, Scottish Terrier, Sealyham Terrier, Setter, Shar-Pei, Sheep Dog, Sheepadoodle, Shepherd, Shetland Sheepdog / Sheltie, Shiba Inu, Shih poo, Shih Tzu, Shollie, Siberian Husky, Silky Terrier, Skye Terrier, Sloughi, Smooth Collie, Smooth Fox Terrier, South Russian Ovtcharka, Spaniel, Spanish Water Dog, Spinone Italiano, Spitz, Staffordshire Bull Terrier, Standard Poodle, Standard Schnauzer, Sussex Spaniel, Swedish Vallhund, Tennessee Treeing Brindle, Terrier, Thai Ridgeback, Tibetan Mastiff, Tibetan Spaniel, Tibetan Terrier, Tosa Inu, Toy Fox Terrier, Toy Manchester Terrier, Treeing Walker Coonhound, Vizsla, Weimaraner, Welsh Springer Spaniel, Welsh Terrier, West Highland White Terrier / Westie, Wheaten Terrier, Whippet, White German Shepherd, Wire Fox Terrier, Wirehaired Dachshund, Wirehaired Pointing Griffon, Wirehaired Terrier, Xoloitzcuintli / Mexican Hairless, Yorkshire Terrier
CatAbyssinian, American Bobtail, American Curl, American Shorthair, American Wirehair, Applehead Siamese, Balinese, Bengal, Birman, Bombay, British Shorthair, Burmese, Burmilla, Calico, Canadian Hairless, Chartreux, Chausie, Chinchilla, Cornish Rex, Cymric, Devon Rex, Dilute Calico, Dilute Tortoiseshell, Domestic Long Hair, Domestic Medium Hair, Domestic Short Hair, Egyptian Mau, Exotic Shorthair, Extra-Toes Cat / Hemingway Polydactyl, Havana, Himalayan, Japanese Bobtail, Javanese, Korat, LaPerm, Maine Coon, Manx, Munchkin, Nebelung, Norwegian Forest Cat, Ocicat, Oriental Long Hair, Oriental Short Hair, Oriental Tabby, Persian, Pixiebob, Ragamuffin, Ragdoll, Russian Blue, Scottish Fold, Selkirk Rex, Siamese, Siberian, Silver, Singapura, Snowshoe, Somali, Sphynx / Hairless Cat, Tabby, Tiger, Tonkinese, Torbie, Tortoiseshell, Toyger, Turkish Angora, Turkish Van, Tuxedo, York Chocolate
RabbitAmerican, American Fuzzy Lop, American Sable, Angora Rabbit, Belgian Hare, Beveren, Britannia Petite, Bunny Rabbit, Californian, Champagne D'Argent, Checkered Giant, Chinchilla, Cinnamon, Creme D'Argent, Dutch, Dwarf, Dwarf Eared, English Lop, English Spot, Flemish Giant, Florida White, French Lop, Harlequin, Havana, Himalayan, Holland Lop, Hotot, Jersey Wooly, Lilac, Lionhead, Lop Eared, Mini Lop, Mini Rex, Netherland Dwarf, New Zealand, Palomino, Polish, Rex, Rhinelander, Satin, Silver, Silver Fox, Silver Marten, Tan

Examples

Request (Basic)

{
  "name": "Buddy",
  "species": "dog",
  "age_category": "young",
  "sex": "male",
  "size": "medium",
  "status": "available",
  "health": "good"
}

Request (Full)

{
  "name": "Luna",
  "species": "cat",
  "age_category": "young",
  "sex": "female", 
  "size": "medium",
  "status": "available",
  "health": "great",
  "breed": ["Persian", "Egyptian Mau"],
  "color": ["Smoke", "Tortoiseshell"],
  "age_years": "2",
  "age_months": "3",
  "description": "Luna is a gentle, affectionate Persian mix who loves to cuddle.",
  "spayed": true,
  "adoption_fee": "150",
  "microchip_id": "985141004534221",
  "good_with": ["cats", "seniors", "smallApartments", "sedentaryLifestyle"],
  "bad_with": ["dogs", "kids"],
  "temperaments": ["affectionate", "gentle", "quiet", "social"],
  "image_urls": [
    "https://mysite.com/pets/luna-1.webp",
    "https://mysite.com/pets/luna-2.webp"
  ]
}

Code

async function addPet() {
  try {
    const response = await fetch("https://pawplacer.com/api/pets", {
      method: "POST",
      headers: {
        "x-api-key": process.env.PAWPLACER_API_KEY,
        "Content-Type": "application/json"
      },
      body: JSON.stringify({
        name: "Buddy",
        species: "dog",
        age_category: "young",
        sex: "male",
        size: "medium",
        status: "available",
        health: "good"
      })
    });

    if (!response.ok) {
      throw new Error('Failed to add pet');
    }

    const result = await response.json();
    console.log('Pet added successfully:', result);
  } catch (error) {
    console.error('Error:', error);
  }
}

Error Handling

Status CodeMeaningReason
400Bad RequestInvalid or missing fields
401UnauthorizedAPI key missing or invalid
500Server ErrorAn error occurred on the server

Best Practices

  • Upload images in .webp format for better performance. If you upload images via the PawPlacer website, they will be automatically converted to .webp.
  • Keep API keys secure and do not expose them publicly.
  • Handle errors gracefully to ensure smooth application operation.