Turn on the Wi-Fi Hotspot API under Integrations (it costs nothing to turn on), then create a key with Wi-Fi permissions. You can limit a key to some locations.
Example: a code for a guest at check-in
curl -X POST https://api.thailandhosting.com/v1/wifi/locations/LOCATION_ID/vouchers \
-H "Authorization: Bearer thk_YOUR_KEY" \
-d '{"count":1,"minutes":1440,"devices":2,"note":"Room 1204"}'At check-out, void the code with POST …/vouchers/VOUCHER_ID/void.
| Area | What you can do |
|---|---|
| Locations | List them, see their details and usage statistics |
| Access codes | Issue, list, void and print code cards |
| Guest contacts | See, change and delete them (personal data: needs a key that may change data) |
| Staff accounts (Enterprise) | Create, change, delete, set passwords, import from CSV, and group them |
Set up Webhooks to hear at once when a code is first used, a guest signs in, or a Wi-Fi box goes offline or comes back.
Only the Console can: open or delete a location, change its package, edit its sign-in page, set up its Wi-Fi boxes, and read the traffic logs kept by law.
If something goes wrong
Listing guest contacts answers 403
Contacts are personal data: use a key with Wi-Fi Hotspot: read and change.
A key does not see some locations or the staff accounts
The key is limited to some locations: it sees only those and cannot manage staff accounts. Change its limits on the Integrations page.