Skip to content
GET/v1/{metro}/activityall plans

Retrieve 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.

Try this requestRun it with sample data, no key needed. Paste a key to run it live.
Example request
curl -sS \
  -H "X-API-Key: $TAILEND_API_KEY" \
  "https://api.tailend.dev/v1/philadelphia/activity"
Example response · 200
{
  "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"
  }
}

Try any request with sample data, no key needed. Available on every plan.

Metro slug from /v1/metros (e.g. philadelphia).

Optional parameters (6)

Latitude of the point to score.

Longitude of the point to score.

A street address to resolve server-side instead of sending a point.

Radius in metres.

How far ahead the event window reaches, in days.

Opt into a block the lean default response leaves out.

Ctrl Enter to send