Skip to main content
The host list is what a visitor types into on the kiosk and what reception picks from. It goes stale the moment somebody joins or leaves, so it is worth driving from the system that already knows: your HR tool, your directory, your CRM. There are two ways to do it, and they do not mix.

One at a time

POST, PUT and DELETE on /api/visitees. You track which hosts exist and reconcile yourself.

Replace the whole set

POST /api/visitees/external/upload/{company_id}. You send the full list; Vizito makes it so.

Replacing the whole set

This is the simpler model, and the right one when your directory is the source of truth. Send everybody who may be visited; the previous external list is discarded and replaced.
cURL
Response
This endpoint accepts one upload per location per 24 hours. A second call within that window is answered with hosts_imported: 0 and changes nothing — it does not fail loudly. Schedule it as a nightly job, not as a per-change hook.
A few things worth knowing:
  • Hosts uploaded this way are marked external. They are used on the kiosk exactly like managed hosts, but they do not appear in GET /api/visitees/bycompany/{company_id} — that endpoint returns the manually maintained list only.
  • Sending an empty data array clears the external host list.
  • Email addresses are lower-cased on the way in.

Managing hosts one by one

Use this when Vizito is the source of truth, or when only a handful of hosts come from elsewhere.

Why the contact details matter

mail, mobile and telephoneNumber are not decoration. When a visitor picks a host on the kiosk, Vizito notifies that host on the details stored here — and when you pre-register a visitor with a recipient that matches a host’s cn, the invitation and the notification pick up that host’s email and mobile automatically. So the name you store in cn is the join key. Keep it identical to the recipient your other integrations send.

All host endpoints

Parameters and responses in detail.