N-Ways
Documentação para programadoresLugares

Lugares

Negócios e lugares perto de um ponto, por texto, e os detalhes de um lugar.

Nesta página
Nota:

Envie a sua chave com key=A_SUA_CHAVE_API no endereço, ou no cabeçalho X-NWays-Api-Key. Chaves de API

Endereço base: https://nways.ng/maps/v1

Negócios e locais perto de um ponto

GET https://nways.ng/maps/v1/places/nearby

Por categoria (ordenados por proximidade e relevância, 40 por página; as listas de ATM e dinheiro põem primeiro as máquinas que pagam) e/ou nome. fields= define o SKU: campos básicos (por omissão) search; qualquer campo de contacto places_contact; qualquer campo de ambiente places_atmosphere. Motivos: LAT_LNG_REQUIRED, CATEGORY_INVALID, CATEGORY_OR_QUERY_REQUIRED, RADIUS_INVALID, PAGE_TOKEN_INVALID, FIELDS_INVALID.

Parâmetros

NomeOndeTipoDescrição
latconsultanumberObrigatório.
lngconsultanumberObrigatório.
categoryconsultastringUm de: petrol, charging, food, fastfood, cafe, bar, pos, bank, atm, cash, mechanic, vulcanizer, carwash, police, hospital, pharmacy, hotel, supermarket, shop, market, motorpark, parking, church, mosque, phones, salon, school, office, attraction, estate, residential, government, university.
qconsultastringAté 60 caracteres.
radiusconsultanumber≥ 200, ≤ 50000.
limitconsultaintegerPredefinição: 40. ≥ 1, ≤ 40.
pageTokenconsultastring
fieldsconsultastringBásico (SKU search): id, name, category, location, formattedAddress, plusCode, country, distanceM, businessStatus, attribution. Contacto (places_contact): phone, email, website, openingHours. Ambiente (places_atmosphere): rating, amenities, details. Por omissão: básico.
cURL
curl "https://nways.ng/maps/v1/places/nearby?lat=6.4474&lng=3.472" \
  -H "X-NWays-Api-Key: A_SUA_CHAVE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/places/nearby?lat=6.4474&lng=3.472', {
  headers: { 'X-NWays-Api-Key': process.env.NWAYS_API_KEY },
})
const data = await res.json()
Python
import os
import requests

res = requests.get(
    "https://nways.ng/maps/v1/places/nearby?lat=6.4474&lng=3.472",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Resposta

Locais

CampoTipoDescrição
placesPlace[]Obrigatório.
places[].idstringObrigatório.
places[].namestring
places[].categorystring
places[].locationPoint
places[].location.typestringObrigatório.
places[].location.coordinatesnumber[]Obrigatório. [lng, lat] Pelo menos 2 elementos, no máximo 2 elementos.
places[].formattedAddressstring
places[].plusCodestring
places[].countrystring
places[].distanceMnumber
places[].businessStatusstringUm de: OPERATIONAL, UNVERIFIED, REPORTED_CLOSED.
places[].attributionstring
places[].phonestringNível contacto
places[].emailstringNível contacto
places[].websitestringNível contacto
places[].openingHoursobjectNível contacto
places[].openingHours.textstringObrigatório. Sintaxe opening_hours do OpenStreetMap
places[].openingHours.sourcestringObrigatório. Um de: listed, owner, brand, usual.
places[].openingHours.confirmedinteger
places[].ratingobjectNível ambiente
places[].rating.scorenumber1–5, suavizado
places[].rating.countinteger
places[].rating.percentUpinteger
places[].rating.reviewCountinteger
places[].amenitiesobjectNível ambiente: o que oferece, como etiquetas OpenStreetMap (payment:*, wheelchair, delivery…).
places[].detailsobjectNível ambiente: detalhes por setor de atividade.
nextPageTokenstring
attributionstringObrigatório.
200 OK
{
  "places": [
    {
      "id": "osm:n2987189855",
      "name": "Shoprite",
      "category": "supermarket",
      "location": {
        "type": "string",
        "coordinates": [
          0
        ]
      },
      "formattedAddress": "string",
      "plusCode": "string",
      "country": "string",
      "distanceM": 0,
      "businessStatus": "OPERATIONAL",
      "attribution": "string",
      "phone": "string",
      "email": "string",
      "website": "string",
      "openingHours": {
        "text": "Mo-Su 09:00-21:00",
        "source": "listed",
        "confirmed": 0
      },
      "rating": {
        "score": 0,
        "count": 0,
        "percentUp": 0,
        "reviewCount": 0
      },
      "amenities": {},
      "details": {}
    }
  ],
  "nextPageToken": "string",
  "attribution": "string"
}

Erros

  • default Erro

Negócios e locais por texto

GET https://nways.ng/maps/v1/places/search

"Zenith Bank Ikeja", "farmácia perto de Yaba". SKU como em /places/nearby. Motivos: os de /geocode, e RADIUS_INVALID, FIELDS_INVALID.

Parâmetros

NomeOndeTipoDescrição
qconsultastringObrigatório.
nearconsultastringlat,lng: ordenar e escolher resultados perto deste ponto.
radiusconsultanumberCom near. ≥ 200, ≤ 50000.
countryconsultastringLista separada por vírgulas de NG, GH, BJ, TG, GA, CI, LR, GN, SL, GW, SN, CM, BF, CV, GM.
limitconsultaintegerPredefinição: 10. ≥ 1, ≤ 20.
langconsultastringUm de: en, fr, pt. Predefinição: en.
fieldsconsultastringBásico (SKU search): id, name, category, location, formattedAddress, plusCode, country, distanceM, businessStatus, attribution. Contacto (places_contact): phone, email, website, openingHours. Ambiente (places_atmosphere): rating, amenities, details. Por omissão: básico.
cURL
curl "https://nways.ng/maps/v1/places/search?q=pharmacy+Yaba" \
  -H "X-NWays-Api-Key: A_SUA_CHAVE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/places/search?q=pharmacy+Yaba', {
  headers: { 'X-NWays-Api-Key': process.env.NWAYS_API_KEY },
})
const data = await res.json()
Python
import os
import requests

res = requests.get(
    "https://nways.ng/maps/v1/places/search?q=pharmacy+Yaba",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Resposta

Locais

CampoTipoDescrição
placesPlace[]Obrigatório.
places[].idstringObrigatório.
places[].namestring
places[].categorystring
places[].locationPoint
places[].location.typestringObrigatório.
places[].location.coordinatesnumber[]Obrigatório. [lng, lat] Pelo menos 2 elementos, no máximo 2 elementos.
places[].formattedAddressstring
places[].plusCodestring
places[].countrystring
places[].distanceMnumber
places[].businessStatusstringUm de: OPERATIONAL, UNVERIFIED, REPORTED_CLOSED.
places[].attributionstring
places[].phonestringNível contacto
places[].emailstringNível contacto
places[].websitestringNível contacto
places[].openingHoursobjectNível contacto
places[].openingHours.textstringObrigatório. Sintaxe opening_hours do OpenStreetMap
places[].openingHours.sourcestringObrigatório. Um de: listed, owner, brand, usual.
places[].openingHours.confirmedinteger
places[].ratingobjectNível ambiente
places[].rating.scorenumber1–5, suavizado
places[].rating.countinteger
places[].rating.percentUpinteger
places[].rating.reviewCountinteger
places[].amenitiesobjectNível ambiente: o que oferece, como etiquetas OpenStreetMap (payment:*, wheelchair, delivery…).
places[].detailsobjectNível ambiente: detalhes por setor de atividade.
nextPageTokenstring
attributionstringObrigatório.
200 OK
{
  "places": [
    {
      "id": "osm:n2987189855",
      "name": "Shoprite",
      "category": "supermarket",
      "location": {
        "type": "string",
        "coordinates": [
          0
        ]
      },
      "formattedAddress": "string",
      "plusCode": "string",
      "country": "string",
      "distanceM": 0,
      "businessStatus": "OPERATIONAL",
      "attribution": "string",
      "phone": "string",
      "email": "string",
      "website": "string",
      "openingHours": {
        "text": "Mo-Su 09:00-21:00",
        "source": "listed",
        "confirmed": 0
      },
      "rating": {
        "score": 0,
        "count": 0,
        "percentUp": 0,
        "reviewCount": 0
      },
      "amenities": {},
      "details": {}
    }
  ],
  "nextPageToken": "string",
  "attribution": "string"
}

Erros

  • default Erro

Detalhes de um local

GET https://nways.ng/maps/v1/places/{id}

fields é obrigatório: os campos de que precisa (definem o SKU), ou * para todos (places_atmosphere). Motivos: PLACE_ID_INVALID, FIELDS_REQUIRED, FIELDS_INVALID, PLACE_NOT_FOUND.

Parâmetros

NomeOndeTipoDescrição
idcaminhostringObrigatório.
fieldsconsultastringObrigatório.
cURL
curl "https://nways.ng/maps/v1/places/osm%3An2987189855?fields=name%2Clocation%2Cphone%2CopeningHours" \
  -H "X-NWays-Api-Key: A_SUA_CHAVE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/places/osm%3An2987189855?fields=name%2Clocation%2Cphone%2CopeningHours', {
  headers: { 'X-NWays-Api-Key': process.env.NWAYS_API_KEY },
})
const data = await res.json()
Python
import os
import requests

res = requests.get(
    "https://nways.ng/maps/v1/places/osm%3An2987189855?fields=name%2Clocation%2Cphone%2CopeningHours",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Resposta

O local

CampoTipoDescrição
idstringObrigatório.
namestring
categorystring
locationPoint
location.typestringObrigatório.
location.coordinatesnumber[]Obrigatório. [lng, lat] Pelo menos 2 elementos, no máximo 2 elementos.
formattedAddressstring
plusCodestring
countrystring
distanceMnumber
businessStatusstringUm de: OPERATIONAL, UNVERIFIED, REPORTED_CLOSED.
attributionstring
phonestringNível contacto
emailstringNível contacto
websitestringNível contacto
openingHoursobjectNível contacto
openingHours.textstringObrigatório. Sintaxe opening_hours do OpenStreetMap
openingHours.sourcestringObrigatório. Um de: listed, owner, brand, usual.
openingHours.confirmedinteger
ratingobjectNível ambiente
rating.scorenumber1–5, suavizado
rating.countinteger
rating.percentUpinteger
rating.reviewCountinteger
amenitiesobjectNível ambiente: o que oferece, como etiquetas OpenStreetMap (payment:*, wheelchair, delivery…).
detailsobjectNível ambiente: detalhes por setor de atividade.
200 OK
{
  "id": "osm:n2987189855",
  "name": "Shoprite",
  "category": "supermarket",
  "location": {
    "type": "string",
    "coordinates": [
      0
    ]
  },
  "formattedAddress": "string",
  "plusCode": "string",
  "country": "string",
  "distanceM": 0,
  "businessStatus": "OPERATIONAL",
  "attribution": "string",
  "phone": "string",
  "email": "string",
  "website": "string",
  "openingHours": {
    "text": "Mo-Su 09:00-21:00",
    "source": "listed",
    "confirmed": 0
  },
  "rating": {
    "score": 0,
    "count": 0,
    "percentUp": 0,
    "reviewCount": 0
  },
  "amenities": {},
  "details": {}
}

Erros

  • default Erro