Skip to content

Location Scores

Stable
Available in the US and Canada

Our Location Scores assess the quality of transportation, services, and character characteristics of any latitude/longitude location or neighbourhood in Canada or the US. With the new iteration of our Scores API, clients can now obtain up to 17 location scores for up to 4 different geography levels. Scores returned are on a scale of 0 to 5. Lat/long scores will either be .0 or .5 and neighbourhood,macro-neighbourhood and municipality scores are rounded to the nearest tenth. ie. 4.778 will become 4.8.

These levels are:

  • Lat/Long

  • Neighbourhoods

  • Macro neighbourhoods

  • Municipalities

Local Logic provides the following Location Scores, which can be accessed via the v1/scores and v3/scores endpoints documented below. Note: Not all Location Scores are available in all locations.

Location Scores

Transportation

Location ScoreScoreNameDescription
Pedestrian friendlypedestrian_friendlyRepresents how many stores and institutions are nearby and how pleasant it is to walk to them.
Cycling friendlycycling_friendlyRepresents how suitable the area is for cycling in terms of nearby bicycle infrastructure and calm streets, as well as the number of destinations that can be reached by bicycle.
Transit friendlytransit_friendlyRepresents the frequency and level of service of public transit.
Car friendlycar_friendlyRepresents how well traffic flows, and how easy it is to park.

Services

Location ScoreScoreNameDescription
ParksparksQuantity and area of parks nearby.
GroceriesgroceriesDistance to closest grocery store and quantity of grocery stores nearby.
ShoppingshoppingQuantity and diversity of shops nearby.
NightlifenightlifeQuantity and diversity of bars nearby.
RestaurantsrestaurantsQuantity and diversity of restaurants nearby.
CafescafesQuantity and diversity of cafés.
DaycaresdaycaresDistance to closest daycare school.
Primary Schoolsprimary_schoolsDistance to closest elementary school.
High Schoolshigh_schoolsDistance to closest high school.

Character

Location ScoreScoreNameDescription
QuietquietLevel of noise nearby.
GreengreeneryQuantity of nearby green spaces and tree canopy coverage.
HistorichistoricPresence of heritage buildings and building age in the area.
VibrantvibrantLevel of street activity nearby.

This PDF describes what the values of 0-10 mean for their respective scores.

GET v3/scores

Location Scores for a specific coordinate point location and neighbourhood, macro neighbourhood, and municipality which contains it, can be retrieved using a latitude/longitude request.

Scores for the latitude/longitude point location are returned as a score out of 5, with a precision to the nearest .5. Scores for the neighbourhood, macro neighbourhood, and municipality geography scores are also returned as a score out of 5, but with a precision to the nearest .1.

GET v3/scores

V3 Header Request Parameters

This API uses JWT token based authentication. This JWT Bearer token is what is used to populate the Authorization header below.

Instructions on how to retrieve this token can be found at Accessing the API → V3 API Authorization.

HeaderStatusDescription
AuthorizationrequiredYour bearer token retrieved from our authorization API, ex. Bearer eyJhbGci...
AcceptrequiredThe datatype to request, this API will return application/json.

V3 QueryString Request Parameters

ParameterStatusDescription
latrequired*A decimal number between -90 and 90, representing the latitude.
lngrequired*A decimal number between -180 and 180, representing the longitude.
geography_idsoptional*A comma separated list of geography ids, ex. g30_dpz89rm7 or g30_dpz89rm7,g10_dpz89rm7. If this parameter is provided, the lat and lng parameters are optional.
geography_levelsoptionalA list of geography levels to include, ex. 10,30. If no geography levels are provided, no geography scores will be returned.

Available: Neighbourhood: 10
Macro-Neighbourhood or Borough: 20
Municipality: 30
includeoptionalA list ScoreNames to return, ex. car_friendly,pedestrian_friendly. If no names are provided, all scores will be returned.
localeoptionalString value representing the two letter ISO 361-1 language code to return the scores in, ex. fr

Available: en and fr
* If geography ids are provided, the lat and lng arguments are optional

V3 NodeJS Example

require('node-fetch')('https://api.locallogic.co/v3/scores?' + new URLSearchParams({
lat: 41.847206,
lng: -87.668825,
geography_ids: 'g30_f25dv0me',
geography_levels: '10,20,30',
include: 'transit_friendly,quiet',
locale: 'en',
}), {
method: 'GET',
headers: {
Accept: 'application/json',
Authorization: 'Bearer eyJhbGciOiJ...'
}
})
.then(response => response.json())
.then(body => {
console.log(body)
})
.catch(error => {
console.log(error)
})

V3 Python Example

import requests
response = requests.get(
"https://api.locallogic.co/v3/scores",
headers={
"Accept": "application/json",
"Authorization": "Bearer eyJhbGciOiJ..."},
params={
"lat": 43.593611,
"lng": -79.536194,
"geography_ids": "g30_f25dv0me",
"geography_levels": "10,20,30",
"include": "transit_friendly,quiet",
"locale": "en",
}
)
print(response.json())
# See response example below

200 - V3 Response Example

{
"data": {
"type": "scores",
"location": {
"transit_friendly": {
"value": "4.5",
"text": "Within walking distance of a subway and frequent bus lines"
},
"quiet": { "value": "1.0", "text": "Many sources of noise nearby" }
},
"geographies": [
{
"geog_id": "g30_f25dv0me",
"name": "Westmount",
"geog_level_type": "municipality",
"scores": {
"transit_friendly": {
"value": "4.5",
"text": "Within walking distance of a subway and frequent bus lines"
},
"quiet": {
"value": "2.7",
"text": "Multiple sources of noise nearby"
}
}
},
// Plus other geography score objects
]
},
"meta": {
"message": "Successfully called v3/scores API.",
"type": "LocalLogic.API.Success",
"statusCode": 200
}
}

GET v1/scores

⚠️ The v1/scores API is deprecated.

Location Scores for a specific address can be retrieved using a latitude/longitude request.

GET v1/scores

V1 QueryString Request Parameters

ParameterStatusDescription
latrequiredA decimal number between -90 and 90 (Latitude).
lngrequiredA decimal number between -180 and 180 (Longitude).
keyrequiredThe API Key provided to you.
includeoptionalScoreNames separated by commas. See a full list of ScoreNames above. If no names are provided, all scores will be returned.
fieldsoptionalUser defined fields separated by commas.
Available: value,text,name,description,category,icon.
Default: value,text.
localeoptionalString value representing the language to return the scores.
Available: fr (French), en (English).
Default: en

V1 NodeJS Example

require('request')({
method: 'GET',
url: 'https://api.locallogic.co/v1/scores',
qs: {
lat: 45.5656,
lng: -73.5656,
key: 'YOUR_API_KEY',
include: 'transit_friendly,quiet',
fields: 'value,text,description,category,name',
locale: 'en'
}
}, function (err, response, body) {
// See response example
})

200 - V1 Response Example

{
"data": {
"type": "LocationScores",
"attributes": {
"transit_friendly": {
"value": 4.5,
"text": "Good levels of bus and rapid-transit service, but low levels of commuter rail service.",
"name": "Transit friendly",
"description": "Represents the frequency and level of service of public transit",
"category": "Transportation"
},
"quiet": {
"value": 3.5,
"text": "A little bit noisy, due to many businesses and several bars in the area.",
"name": "Quiet",
"description": "Level of noise nearby",
"category": "Character"
}
}
}
}