One REST API,
every rescue on the network.
Sync your rescue's dogs, current needs, and available resources programmatically. Use it with Airtable, Zapier, or any backend you already run.
https://rescuelink.earth/apiX-API-Key: rl_...Authorization: Bearer <jwt>Register once. Sync forever.
Public endpoint. Returns a JWT + API key. Store the key — it's only shown once.
curl -X POST https://rescuelink.earth/api/rescues/register \
-H "Content-Type: application/json" \
-d '{
"org_name": "Second Chance Nashville",
"email": "team@example.org",
"password": "correct-horse-battery",
"contact_person": "Ada Lovelace",
"location": "Nashville, TN",
"country": "USA",
"animal_types": ["dogs", "puppies"],
"current_needs": ["food", "fosters"],
"resources_offered": ["transport"]
}'Uses your API key. Appears in the public GET /needs feed instantly.
curl -X POST https://rescuelink.earth/api/rescues/me/needs \
-H "X-API-Key: rl_YOURKEYHERE" \
-H "Content-Type: application/json" \
-d '{
"category": "food",
"urgency": "high",
"title": "150 lbs puppy food for orphan litter",
"description": "Litter of 12 orphans arrived yesterday.",
"quantity": "150 lbs"
}'Six endpoints. That's the whole surface.
/api/rescues/register publicCreate a rescue account. Returns { token, user, rescue, api_key }. The api_key is shown ONCE.
/api/rescues/me X-API-Key or JWTFetch your rescue profile including animal_types, current_needs, resources_offered, verification status, and social links.
/api/rescues/me X-API-Key or JWTUpdate any field on your rescue profile. Only send the fields you want to change.
curl -X PATCH https://rescuelink.earth/api/rescues/me \
-H "X-API-Key: rl_YOURKEY" \
-H "Content-Type: application/json" \
-d '{"current_needs":["food","medical"],"donation_url":"https://give.example.org"}'/api/rescues/me/api-key/rotate X-API-Key or JWTRotate your API key. Returns { api_key, prefix }. The old key is immediately revoked.
/api/rescues/me/needs X-API-Key or JWTPublish a current need to the public /needs feed. Categories: food, volunteers, fosters, funds, supplies, medical, transport, other. Urgency: low | medium | high | critical.
/api/rescues/me/resources X-API-Key or JWTPublish a resource you can offer other rescues (spare transport seats, foster availability, vet hours, etc.). Appears on the public /rescue-resources feed.
/api/rescues?country=®ion=&q= publicList all rescues. Optional filters: country, region, state, q (fuzzy on name + description).
/api/needs?urgency=&category= publicPublic feed of open needs across the network. Sorted newest-first.
Errors
400 · validation · 401 · missing / bad auth · 403 · role/ownership · 404 · not found · 422 · schema violation · 5xx · we broke something — retry with backoff.
Rate limits & SLA
Fair-use: 60 req/min per key. Higher limits for verified rescues on request. Uptime: 99.9%. Status: GET /api/.