N-Ways
Documentation développeursContacts

Contacts

Votre carnet d’adresses en une seule liste : les destinataires enregistrés (ben_…), vos lieux de retrait (plc_…, vos magasins et entrepôts, parmi lesquels choisir le retrait d’une livraison avec pickupPlaceId) et les clients (cus_…, toutes les personnes que vos livraisons ont servies, conservés à partir des livraisons). Les anciennes listes (/places, /customers, ainsi que /beneficiaries et /addresses) renvoient les mêmes enregistrements et restent comme alias obsolètes.

Sur cette page
Remarque :

Envoyez votre clé avec key=VOTRE_CLE_API dans l’adresse, ou dans l’en-tête X-NWays-Api-Key. Clés d’API

Adresse de base : https://nways.ng/maps/v1/fleet

Votre carnet d’adresses (destinataires, lieux de retrait et clients)

GET https://nways.ng/maps/v1/fleet/contacts

Un seul type (kind=recipient|place|customer, chacun dans son ordre et avec ses pages), ou tous : vos lieux de retrait (celui par défaut en premier), puis vos destinataires enregistrés (par nom, jusqu’à limit), puis vos clients (livraison la plus récente d’abord, une page à la fois : nextPageToken ne continue que dans les clients). q cherche un nom, un téléphone, un e-mail, une adresse, un code de porte ou une étiquette ; tag garde les destinataires d’une étiquette. recipients indique combien de destinataires correspondent ; tags leurs étiquettes, les plus utilisées d’abord.

Paramètres

NomOùTypeDescription
kindrequêtestringAu choix: recipient, place, customer.
qrequêtestring
tagrequêtestringDestinataires uniquement.
limitrequêteintegerDestinataires : 100 (au plus 1 000) ; clients : 25 (au plus 100) par page. ≥ 1.
pageTokenrequêtestringClients : nextPageToken (ou prevPageToken).
cURL
curl "https://nways.ng/maps/v1/fleet/contacts" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts', {
  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/fleet/contacts",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Réponse

Contacts

ChampTypeDescription
contactsContact[]Obligatoire.
contacts[].idstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).
contacts[].kindstringObligatoire. Au choix: recipient, place, customer.
contacts[].namestringObligatoire.
contacts[].phonestringObligatoire.
contacts[].altPhonestring
contacts[].emailstring
contacts[].placeNamestringDestinataires : le nom du point de livraison ; clients : celui de leur dernier point de livraison.
contacts[].addressstring
contacts[].doorCodestring
contacts[].latnumber | nullObligatoire. null pour un client sans adresse conservée.
contacts[].lngnumber | nullObligatoire.
contacts[].notesstring
contacts[].itemDescriptionstring
contacts[].packageSizestring | null
contacts[].tagsstring[]
contacts[].regularsintegerDestinataires : livraisons récurrentes vers eux qui ne sont pas terminées.
contacts[].hoursstringLieux
contacts[].defaultbooleanLieux : les nouvelles livraisons de la console partent de lui.
contacts[].deliveriesintegerClients
contacts[].addressesintegerClients
contacts[].lastDeliveryAtstring (date-time)Clients
contacts[].createdAtstring (date-time)
contacts[].updatedAtstring (date-time)
recipientsinteger
tagsobject[]
tags[].tagstring
tags[].countinteger
nextPageTokenstring
prevPageTokenstring
200 OK
{
  "contacts": [
    {
      "id": "ben_4fQ9xLm2Za",
      "kind": "recipient",
      "name": "string",
      "phone": "string",
      "altPhone": "string",
      "email": "string",
      "placeName": "string",
      "address": "string",
      "doorCode": "string",
      "lat": 0,
      "lng": 0,
      "notes": "string",
      "itemDescription": "string",
      "packageSize": "string",
      "tags": [
        "string"
      ],
      "regulars": 0,
      "hours": "string",
      "default": true,
      "deliveries": 0,
      "addresses": 0,
      "lastDeliveryAt": "2026-10-15T09:00:00+01:00",
      "createdAt": "2026-10-15T09:00:00+01:00",
      "updatedAt": "2026-10-15T09:00:00+01:00"
    }
  ],
  "recipients": 0,
  "tags": [
    {
      "tag": "string",
      "count": 0
    }
  ],
  "nextPageToken": "string",
  "prevPageToken": "string"
}

Erreurs

  • default Erreur

Enregistrer un destinataire ou ajouter un lieu de retrait

POST https://nways.ng/maps/v1/fleet/contacts

kind vaut recipient (un point de livraison enregistré : name, phones, email, placeName, address, doorCode, lat, lng, notes, itemDescription, packageSize, tags ; jusqu’à 5 000) ou place (un lieu de retrait : name, doorCode, address, lat, lng, phone, hours, default ; jusqu’à 200 ; le premier est celui par défaut). Les clients viennent des livraisons et ne peuvent pas être créés ici. name, lat et lng sont obligatoires.

Corps de la requête

kind (recipient ou place) et les champs de ce type ; name, lat et lng sont obligatoires pour en créer un.

ChampTypeDescription
kindstringAu choix: recipient, place.
namestring100 caractères au plus.
phonestring
altPhonestringDestinataires
emailstringDestinataires
placeNamestringDestinataires
addressstring300 caractères au plus.
doorCodestring32 caractères au plus.
latnumber
lngnumber
notesstringDestinataires
itemDescriptionstringDestinataires
packageSizestring | nullDestinataires
tagsstring[]Destinataires Au plus 8 éléments.
hoursstringLieux 200 caractères au plus.
defaultbooleanLieux
cURL
curl -X POST "https://nways.ng/maps/v1/fleet/contacts" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API" \
  -H "Content-Type: application/json" \
  -d '{"kind":"recipient","name":"Mama Put","phone":"+234 803 555 0101","address":"12 Herbert Macaulay Way","lat":6.5095,"lng":3.3711,"tags":["Shop"]}'
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts', {
  method: 'POST',
  headers: { 'X-NWays-Api-Key': process.env.NWAYS_API_KEY, 'Content-Type': 'application/json' },
  body: JSON.stringify({
    "kind": "recipient",
    "name": "Mama Put",
    "phone": "+234 803 555 0101",
    "address": "12 Herbert Macaulay Way",
    "lat": 6.5095,
    "lng": 3.3711,
    "tags": [
      "Shop"
    ]
  }),
})
const data = await res.json()
Python
import os
import requests

res = requests.post(
    "https://nways.ng/maps/v1/fleet/contacts",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    json={"kind": "recipient", "name": "Mama Put", "phone": "+234 803 555 0101", "address": "12 Herbert Macaulay Way", "lat": 6.5095, "lng": 3.3711, "tags": ["Shop"]},
    timeout=10,
)
data = res.json()

Réponse

Enregistré

ChampTypeDescription
idstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).
kindstringObligatoire. Au choix: recipient, place, customer.
namestringObligatoire.
phonestringObligatoire.
altPhonestring
emailstring
placeNamestringDestinataires : le nom du point de livraison ; clients : celui de leur dernier point de livraison.
addressstring
doorCodestring
latnumber | nullObligatoire. null pour un client sans adresse conservée.
lngnumber | nullObligatoire.
notesstring
itemDescriptionstring
packageSizestring | null
tagsstring[]
regularsintegerDestinataires : livraisons récurrentes vers eux qui ne sont pas terminées.
hoursstringLieux
defaultbooleanLieux : les nouvelles livraisons de la console partent de lui.
deliveriesintegerClients
addressesintegerClients
lastDeliveryAtstring (date-time)Clients
createdAtstring (date-time)
updatedAtstring (date-time)
201 OK
{
  "id": "ben_4fQ9xLm2Za",
  "kind": "recipient",
  "name": "string",
  "phone": "string",
  "altPhone": "string",
  "email": "string",
  "placeName": "string",
  "address": "string",
  "doorCode": "string",
  "lat": 0,
  "lng": 0,
  "notes": "string",
  "itemDescription": "string",
  "packageSize": "string",
  "tags": [
    "string"
  ],
  "regulars": 0,
  "hours": "string",
  "default": true,
  "deliveries": 0,
  "addresses": 0,
  "lastDeliveryAt": "2026-10-15T09:00:00+01:00",
  "createdAt": "2026-10-15T09:00:00+01:00",
  "updatedAt": "2026-10-15T09:00:00+01:00"
}

Erreurs

  • default Erreur

Vos propres adresses d’abord pendant la saisie d’un arrêt

GET https://nways.ng/maps/v1/fleet/contacts/addresses

Vos lieux de retrait et les points de livraison déjà utilisés qui correspondent à q (chaque mot, dans le nom, l’adresse ou le code de porte), les plus récemment utilisés d’abord ; au plus limit (5, jusqu’à 10).

Paramètres

NomOùTypeDescription
qrequêtestring
limitrequêteintegerPar défaut: 5. ≥ 1, ≤ 10.
cURL
curl "https://nways.ng/maps/v1/fleet/contacts/addresses" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts/addresses', {
  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/fleet/contacts/addresses",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Réponse

Adresses

ChampTypeDescription
addressesobject[]Obligatoire.
200 OK
{
  "addresses": [
    {}
  ]
}

Erreurs

  • default Erreur

Obtenir un contact

GET https://nways.ng/maps/v1/fleet/contacts/{contactId}

Paramètres

NomOùTypeDescription
contactIdcheminstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).
cURL
curl "https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za', {
  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/fleet/contacts/ben_4fQ9xLm2Za",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Réponse

Contact

ChampTypeDescription
idstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).
kindstringObligatoire. Au choix: recipient, place, customer.
namestringObligatoire.
phonestringObligatoire.
altPhonestring
emailstring
placeNamestringDestinataires : le nom du point de livraison ; clients : celui de leur dernier point de livraison.
addressstring
doorCodestring
latnumber | nullObligatoire. null pour un client sans adresse conservée.
lngnumber | nullObligatoire.
notesstring
itemDescriptionstring
packageSizestring | null
tagsstring[]
regularsintegerDestinataires : livraisons récurrentes vers eux qui ne sont pas terminées.
hoursstringLieux
defaultbooleanLieux : les nouvelles livraisons de la console partent de lui.
deliveriesintegerClients
addressesintegerClients
lastDeliveryAtstring (date-time)Clients
createdAtstring (date-time)
updatedAtstring (date-time)
200 OK
{
  "id": "ben_4fQ9xLm2Za",
  "kind": "recipient",
  "name": "string",
  "phone": "string",
  "altPhone": "string",
  "email": "string",
  "placeName": "string",
  "address": "string",
  "doorCode": "string",
  "lat": 0,
  "lng": 0,
  "notes": "string",
  "itemDescription": "string",
  "packageSize": "string",
  "tags": [
    "string"
  ],
  "regulars": 0,
  "hours": "string",
  "default": true,
  "deliveries": 0,
  "addresses": 0,
  "lastDeliveryAt": "2026-10-15T09:00:00+01:00",
  "createdAt": "2026-10-15T09:00:00+01:00",
  "updatedAt": "2026-10-15T09:00:00+01:00"
}

Erreurs

  • default Erreur

Modifier un destinataire ou un lieu de retrait

PATCH https://nways.ng/maps/v1/fleet/contacts/{contactId}

Les champs du type, comme à la création (kind peut être omis ; il ne peut pas changer). Un client est l’historique de ses livraisons et ne peut pas être modifié (400) : enregistrez-le comme destinataire.

Paramètres

NomOùTypeDescription
contactIdcheminstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).

Corps de la requête

kind (recipient ou place) et les champs de ce type ; name, lat et lng sont obligatoires pour en créer un.

ChampTypeDescription
kindstringAu choix: recipient, place.
namestring100 caractères au plus.
phonestring
altPhonestringDestinataires
emailstringDestinataires
placeNamestringDestinataires
addressstring300 caractères au plus.
doorCodestring32 caractères au plus.
latnumber
lngnumber
notesstringDestinataires
itemDescriptionstringDestinataires
packageSizestring | nullDestinataires
tagsstring[]Destinataires Au plus 8 éléments.
hoursstringLieux 200 caractères au plus.
defaultbooleanLieux
cURL
curl -X PATCH "https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API" \
  -H "Content-Type: application/json" \
  -d '{"kind":"recipient","name":"string","phone":"string","altPhone":"string","email":"string","placeName":"string","address":"string","doorCode":"string","lat":0,"lng":0,"notes":"string","itemDescription":"string","packageSize":"string","tags":["string"],"hours":"string","default":true}'
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za', {
  method: 'PATCH',
  headers: { 'X-NWays-Api-Key': process.env.NWAYS_API_KEY, 'Content-Type': 'application/json' },
  body: JSON.stringify({
    "kind": "recipient",
    "name": "string",
    "phone": "string",
    "altPhone": "string",
    "email": "string",
    "placeName": "string",
    "address": "string",
    "doorCode": "string",
    "lat": 0,
    "lng": 0,
    "notes": "string",
    "itemDescription": "string",
    "packageSize": "string",
    "tags": [
      "string"
    ],
    "hours": "string",
    "default": true
  }),
})
const data = await res.json()
Python
import os
import requests

res = requests.patch(
    "https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    json={"kind": "recipient", "name": "string", "phone": "string", "altPhone": "string", "email": "string", "placeName": "string", "address": "string", "doorCode": "string", "lat": 0, "lng": 0, "notes": "string", "itemDescription": "string", "packageSize": "string", "tags": ["string"], "hours": "string", "default": True},
    timeout=10,
)
data = res.json()

Réponse

Contact

ChampTypeDescription
idstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).
kindstringObligatoire. Au choix: recipient, place, customer.
namestringObligatoire.
phonestringObligatoire.
altPhonestring
emailstring
placeNamestringDestinataires : le nom du point de livraison ; clients : celui de leur dernier point de livraison.
addressstring
doorCodestring
latnumber | nullObligatoire. null pour un client sans adresse conservée.
lngnumber | nullObligatoire.
notesstring
itemDescriptionstring
packageSizestring | null
tagsstring[]
regularsintegerDestinataires : livraisons récurrentes vers eux qui ne sont pas terminées.
hoursstringLieux
defaultbooleanLieux : les nouvelles livraisons de la console partent de lui.
deliveriesintegerClients
addressesintegerClients
lastDeliveryAtstring (date-time)Clients
createdAtstring (date-time)
updatedAtstring (date-time)
200 OK
{
  "id": "ben_4fQ9xLm2Za",
  "kind": "recipient",
  "name": "string",
  "phone": "string",
  "altPhone": "string",
  "email": "string",
  "placeName": "string",
  "address": "string",
  "doorCode": "string",
  "lat": 0,
  "lng": 0,
  "notes": "string",
  "itemDescription": "string",
  "packageSize": "string",
  "tags": [
    "string"
  ],
  "regulars": 0,
  "hours": "string",
  "default": true,
  "deliveries": 0,
  "addresses": 0,
  "lastDeliveryAt": "2026-10-15T09:00:00+01:00",
  "createdAt": "2026-10-15T09:00:00+01:00",
  "updatedAt": "2026-10-15T09:00:00+01:00"
}

Erreurs

  • default Erreur

Supprimer un contact (un client est oublié avec ses adresses)

DELETE https://nways.ng/maps/v1/fleet/contacts/{contactId}

Les livraisons déjà faites gardent ce qui leur a été donné ; les livraisons d’un client oublié suivent la durée de conservation de votre flotte.

Paramètres

NomOùTypeDescription
contactIdcheminstringObligatoire. ben_… (destinataire), plc_… (lieu) ou cus_… (client).
cURL
curl -X DELETE "https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za', {
  method: 'DELETE',
  headers: { 'X-NWays-Api-Key': process.env.NWAYS_API_KEY },
})
const data = await res.json()
Python
import os
import requests

res = requests.delete(
    "https://nways.ng/maps/v1/fleet/contacts/ben_4fQ9xLm2Za",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Réponse

Supprimé

Pas de contenu.

Erreurs

  • default Erreur

Les adresses d’un contact

GET https://nways.ng/maps/v1/fleet/contacts/{contactId}/addresses

Les points de livraison d’un client, le dernier utilisé d’abord, une page à la fois (q, limit, pageToken) ; l’adresse unique d’un destinataire ou d’un lieu.

Paramètres

NomOùTypeDescription
contactIdcheminstringObligatoire.
qrequêtestring
limitrequêteintegerPar défaut: 25. ≥ 1, ≤ 100.
pageTokenrequêtestring
cURL
curl "https://nways.ng/maps/v1/fleet/contacts/string/addresses" \
  -H "X-NWays-Api-Key: VOTRE_CLE_API"
JavaScript
const res = await fetch('https://nways.ng/maps/v1/fleet/contacts/string/addresses', {
  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/fleet/contacts/string/addresses",
    headers={"X-NWays-Api-Key": os.environ["NWAYS_API_KEY"]},
    timeout=10,
)
data = res.json()

Réponse

Adresses

ChampTypeDescription
addressesAddress[]Obligatoire.
addresses[].idstringObligatoire.
addresses[].namestringObligatoire.
addresses[].addressstringObligatoire.
addresses[].doorCodestringObligatoire. Le code NIPOST ou GhanaPost par lequel l’adresse commence ("" pour aucun).
addresses[].latnumberObligatoire.
addresses[].lngnumberObligatoire.
addresses[].usesintegerObligatoire. Livraisons qui y sont allées.
addresses[].lastUsedAtstring (date-time)Obligatoire.
totalintegerObligatoire.
nextPageTokenstring
prevPageTokenstring
200 OK
{
  "addresses": [
    {
      "id": "adr_8KwP2nVd5T",
      "name": "string",
      "address": "string",
      "doorCode": "string",
      "lat": 0,
      "lng": 0,
      "uses": 0,
      "lastUsedAt": "2026-10-15T09:00:00+01:00"
    }
  ],
  "total": 0,
  "nextPageToken": "string",
  "prevPageToken": "string"
}

Erreurs

  • default Erreur