/v1/{metro}/activityall plansRetrieve area activity
Returns a single comparable activity score for a point (unlike /around, which resolves an address and returns grouped, ranked results — this endpoint's job is the one number, not a result set), the components behind it, and the specific listings nearby.
Show more
Give either lat + lng or address. An address is resolved to a point server-side and biased to the metro. A request that exceeds the key's geocoding allowance returns 429 naming the reset. data.resolved_address reports the address that was used and how it was resolved (see ResolvedLocation); it is null for the lat/lng form.
Counted rows are published, active, and coordinate-bearing, excluding a source marked gone, anything quarantined, and coordinates that are an approximate resolution rather than a known place. Classes and camps whose term has already ended are not counted: activity_score reflects what is ahead, not what has happened.
activity_score is 0-100 and absolute, so it is comparable between metros and over time. percentile ranks the same point against the metro's reference distribution; it is null until comparison data is available. Diagnostic details are available only to internal keys.
Returns 503 when this endpoint, or address resolution for the address form, is unavailable.
curl -sS \
-H "X-API-Key: $TAILEND_API_KEY" \
"https://api.tailend.dev/v1/philadelphia/activity"{
"data": {
"point": {
"lat": 1,
"lng": 1
},
"radius_m": 1,
"days": 1,
"components": {
"events_30d": 1,
"events_per_week": 1,
"recurring_programs": 1,
"classes": 1,
"camps": 1,
"places_total": 1,
"places_by_type": {}
},
"activity_score": 1,
"summary": "example",
"evidence": [
{
"listing_id": "00000000-0000-4000-8000-000000000001",
"type": "event",
"name": "example",
"distance_m": 1
}
]
},
"meta": {
"metro": "example",
"radius_m": 1,
"days": 1,
"generated_at": "2026-09-24T12:00:00.000Z"
}
}