Welcome to Petfinder.com! The virtual home of 374,783 adoptable pets from 13,618 adoption groups

Search for a Pet

[See All]Breed


Ex: Des Moines, IA or 50301

Find Animal
Welfare Groups

[List by State]

Check us out on:

Download our iPhone app
Petfinder at Myspace
Petfinder at Facebook
Petfinder at YouTube

Petfinder API Frequently Asked Questions

These are the most frequently asked questions from API users during our beta program. We will be expanding it as we hear more from our users, so check back often. If you have a question that is not answered here, e-mail api-help@petfinder.com and we will respond as soon as possible.


What data does the API provide?

The API provides access to public shelter information and adoptable pet data for shelters who have allowed third parties access to their data. You can also query our most current list of breeds that can be used for pet searches.

Can I use the API to update my pet records?

Not yet, but that functionality is planned for a future release.

Is the API stable?

Yes. During this late stage of the beta period, we are not changing the behavior of any of the existing methods or updating the schema unless it is required to fix a bug or add missing functionality. Code written to use the API before October 7, 2009 should be reviewed to verify it still works with the latest schema.

Are there limits on API usage?

Each key is limited to 10,000 API requests per day (this number will likely be increased after the beta period). Each request can return at most 1,000 records, though you can iterate though longer result sets. NOTE: a request is a single call to a Petfinder API method.

Can you increase my usage limits?

We consider API limit increases on a case-by-case basis. Please submit a request to api-help@petfinder.com that contains a description of your application and your daily API usage estimates, and someone will contact you to discuss the matter further.

What do I need my API secret for?

The secret is used to authenticate the caller to the Petfinder API. It is not currently used for anything, but we will eventually offer access to non-adoptable pet data and other private shelter information, and this will require the secret for stronger authentication.

If you are only querying adoptable pet data, you don't need the secret at all.


What do responses look like?

Each method has a response type with a corresponding definition in the XML schema. These responses are prefixed with a standard header and wrapped in a petfinder container tag. There is a comprehensive XML schema that defines the various reponse formats. The response from pet.get, which returns a single pet record, looks like this:

<?xml version="1.0" encoding="UTF-8"?>
<petfinder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://api.petfinder.com/schemas/0.9/petfinder.xsd">
   <breed>German Shepherd Dog</breed>
  <name>Jean Valjean</name>
  <description>Steals bread, but is a good doggie.</description>
  <lastUpdate>2008-09-30 17:01:12</lastUpdate>
    <photo id="1" size="x">
    <photo id="1" size="t">
    <photo id="1" size="pn">
    <photo id="1" size="pnt">
    <photo id="1" size="fpm">

Why don't I see any pet data for a shelter that has adoptable pets?

The most likely reason for this is that the shelter has opted out of sharing their pet data with third parties. Shelter administrators can opt-in on the Edit Shelter Info section of their Petfinder admin page.

Why do I see the same results from pet.find even after I increment the offset?

This was a bug that manifested itself for searches in sparsely populated areas. To fix this, pet.find (and other methods returning large variable result sets) now return a value in the lastOffset tag that you must use as the offset to the next request. This also saves you the hassle of calculating the next offset yourself.

How do I iterate through large result sets?

API methods will return 25 records by default, or the number of records you specify in the count argument, up to 1,000 records per request. The response to your first request will contain a lastOffset tag. To retrieve the next set of results, pass the value of this tag in the offset argument to the next call. Do not change any of the other arguments from the first request.

Why is lastUpdate set to midnight on January 1, 1970 for some pet.find results?

This is a bug that occurs when searching by breed, but does not affect generic animal searches. We hope to have it fixed soon.

Can I link directly to the photo URLs returned in a pet record?

Absolutely. However, if your activity is excessive and is affecting photo service for other users, we may cut off access temporarily.

What are the photo sizes?

Pet photos come in 5 sizes, which are used on various parts of the Petfinder.com site:

xlargeoriginal, up to 500x500
tthumbnailscaled to 50 pixels tall
pnpetnoteup to 320x250
pntpetnote thumbnailscaled to 60 pixels wide
fpmfeatured pet modulescaled to 95 pixels wide

Photos are never scaled "up", so these sizes represent the upper limits of the image dimensions.

What do the status codes mean?

HOn Hold

In the current version of the API you can only query adoptable pets, but a future release will allow you to query adopted pets as well. We also hope to give individual shelters the ability to query all of their pets regardless of status.

What are the pet animal values?

smallfurrySmall & Furry
reptileScales, Fins & Other

What are the pet sizes?

XLExtra Large

What are the pet ages?

Baby, Young, Adult, Senior

What are the pet options?

alteredSpayed / Neutered
noClawsNo Claws
hasShotsHas Current Shots
noCatsNot Good With Cats
noDogsNot Good With Dogs
noKidsNot Good With Kids
specialNeedsHas Special Needs