Guests
Get Guest List
By using this API endpoint, it is possible to get the list of end-users.
Please note that you cannot get more than 100 records per request. In case you need to get more than 100 records, then you should make more than one request.
Endpoint
GET /guests
Rate Limit
This endpoint has a rate limit of 60 requests per minute.
Parameters
| Name | Type | Description |
|---|---|---|
| username | string | Username |
| yas_id | string | Yas ID |
| name | string | Full name of end-user |
| string | Email address | |
| birth_date | date | Date of birth (format: yyyy-mm-dd) |
| location_id | string | Location / venue ID |
| gender | string | Gender Values: male, female |
| phone | string | Mobile / phone number |
| passport_no | string | Passport number |
| nationality | string | Nationality code. ISO 3166-1 alpha-2 country code |
| room_no | string | Room number |
| reservation_no | string | Reservation number |
| custom_field_1 | string | Custom field 1 |
| custom_field_2 | string | Custom field 2 |
| custom_field_3 | string | Custom field 3 |
| online | boolean | If the end-user is currently online or not. true / false |
| last_visit_date | date | Filters guests by their last visit date. 1. Single date (YYYY-MM-DD): Returns end users visited from that date to 1 week after. 2. Date range (YYYY-MM-DD,YYYY-MM-DD): Returns end users visited within the specified interval (max 1 month). |
| receive_marketing | integer | The end users accepted receiving marketing messages Values 0: Opted-out, 1: Opted-in |
| created_at | date | Returns entries created after the entered date (format: yyyy-mm-dd) |
| updated_at | date | Returns entries updated after the entered date (format: yyyy-mm-dd) |
| last_guest_first | boolean | List newly added users first. true/false |
| per_page | integer | The number of records returned. Default is 10, maximum is 100 |
| type | integer | People types null(not sent or empty): all 1: guest 2: employee |
| withBeacon | boolean | Include beacon information in response. true/false |
Response
Tips
HTTP/1.1 200 OK
{
"data": [
{
"id": "FBN2234",
"username": "269FBDC5",
"name": "Sally Brown",
"email": "sbrown@iperasolutions.com",
"birth_date": "1991-02-06",
"gender": "female",
"phone": "+13231123341",
"passport_no": null,
"nationality": "American",
"nationality_code": "US",
"residency": "United States",
"residency_code": "US",
"room_number": null,
"reservation_no": null,
"hotel_status": null,
"facebook_id": null,
"yas_id": "8f627d10-1abc-44d8-b964-a7816388173a",
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"online": false,
"location_id": "92239FF342CA23",
"location_name": "Dining East",
"last_visit_date": "2016-01-21T11:41:39.000000Z",
"last_attempt_time": "2016-01-21T11:41:39.000000Z",
"visit_count": 4,
"receive_marketing": 0,
"last_login_type": "Registration",
"connection_status": 0,
"last_connection_time": "2016-01-21T11:41:39.000000Z",
"last_ssid_name": null,
"created_at": "2016-01-21T11:41:39.000000Z",
"updated_at": "2016-01-22T07:29:58.000000Z",
"tags": [
"FC Barcelona",
"FloorTag",
"Real Madrid"
],
"type": 1,
"checkin_date": null,
"checkout_date": null
}
],
"links": {
"first": "[[BaseUrl]]/guests?page=1",
"last": null,
"prev": null,
"next": "[[BaseUrl]]/guests?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"path": "[[BaseUrl]]/guests",
"per_page": 10,
"to": 10
}
}
Get Guest Count
By using this API endpoint, it is possible to get the count of the guests
Endpoint
GET /guests/count
Rate Limit
This endpoint has a rate limit of 60 requests per minute.
Parameters
| Name | Type | Description |
|---|---|---|
| username | string | Username |
| yas_id | string | Yas ID |
| name | string | Full name of end-user |
| string | Email address | |
| birth_date | date | Date of birth (format: yyyy-mm-dd) |
| location_id | string | Location / venue ID |
| gender | string | Gender Values: male, female |
| phone | string | Mobile / phone number |
| passport_no | string | Passport number |
| nationality | string | Nationality code. ISO 3166-1 alpha-2 country code |
| room_no | string | Room number |
| reservation_no | string | Reservation number |
| custom_field_1 | string | Custom field 1 |
| custom_field_2 | string | Custom field 2 |
| custom_field_3 | string | Custom field 3 |
| online | boolean | If the end-user is currently online or not. true / false |
| last_visit_date | date | Filters guests by their last visit date. 1. Single date (YYYY-MM-DD): Returns end users visited from that date to 1 week after. 2. Date range (YYYY-MM-DD,YYYY-MM-DD): Returns end users visited within the specified interval (max 1 month). |
| receive_marketing | integer | The end users accepted receiving marketing messages Values 0: Opted-out, 1: Opted-in |
| created_at | date | Returns entries created after the entered date (format: yyyy-mm-dd) |
| updated_at | date | Returns entries updated after the entered date (format: yyyy-mm-dd) |
| last_guest_first | boolean | List newly added users first. true/false |
| per_page | integer | The number of records returned. Default is 10, maximum is 100 |
| type | integer | People types null(not sent or empty): all 1: guest 2: employee |
Response
Tips
HTTP/1.1 200 OK
{
"count": 1000
}
Get Guest Details
You can get an end-user providing the corresponding ID.
Endpoint
GET /guests/:id
Rate Limit
This endpoint has a rate limit of 60 requests per minute.
Parameters
| Name | Type | Description |
|---|---|---|
| id | string | End-user ID |
Response
Tips
HTTP/1.1 200 OK
{
"data": {
"id": "FBN2234",
"username": "269FBDC5",
"name": "Sally Brown",
"first_name": "Sally",
"last_name": "Brown",
"email": "sbrown@iperasolutions.com",
"birth_date": "1991-02-06",
"gender": 2,
"gender_name": "Female",
"phone": "+13231123341",
"passport_no": null,
"nationality": "American",
"nationality_code": "US",
"residency": "United States",
"residency_code": "US",
"room_no": null,
"reservation_no": null,
"hotel_status": null,
"facebook_id": null,
"yas_id": "8f627d10-1abc-44d8-b964-a7816388173a",
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"online": false,
"connection_status": 0,
"connection_method": "",
"total_downloaded_data": 0,
"total_uploaded_data": 0,
"last_connection_time": "2016-01-21T11:41:39.000000Z",
"location_id": "92239FF342CA23",
"location_name": "Dining East",
"last_visit_date": "2016-01-21T11:41:39.000000Z",
"last_attempt_time": "2016-01-21T11:41:39.000000Z",
"visit_count": 4,
"receive_marketing": 0,
"checkin_date": null,
"checkout_date": null,
"direct_login": 0,
"tags": [],
"type": 1,
"device_tags": [],
"vendor": null,
"last_ssid_name": null,
"phone_verified_at": null,
"whatsapp_verified_at": null,
"email_verified_at": null,
"smart_login": "Inactive",
"image_url": null,
"created_at": "2016-01-21T11:41:39.000000Z",
"updated_at": "2016-01-22T07:29:58.000000Z"
},
"settings": {
"disconnect_enabled": true,
"name_registration_rule": 1
}
}
Caution
HTTP/1.1 404 Not Found
{
"error": "Record not found"
}
Create Guest
Create a new guest with given credentials
Endpoint
POST /guests
Rate Limit
This endpoint has a rate limit of 60 requests per minute.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| location_id | string | ✔️ | Location / venue ID |
| name | string | Full name of end-user | |
| string | Email address. Must be unique for the same tenant | ||
| birth_date | date | Date of birth (format: yyyy-mm-dd) | |
| gender | string | Gender Values: male, female | |
| phone | string | Mobile / phone number | |
| passport_no | string | Passport number | |
| nationality | string | Nationality code. ISO 3166-1 alpha-2 country code | |
| room_no | string | Room number | |
| reservation_no | string | Reservation number | |
| yas_id | string | Yas ID | |
| marketing_consent | int | 0: Opted-out, 1: Opted-in |
Response
Tips
HTTP/1.1 201 Created
{
"data": {
"id": "FBN2234",
"username": "269FBDC5",
"name": "Sally Brown",
"first_name": "Sally",
"last_name": "Brown",
"email": "sbrown@iperasolutions.com",
"birth_date": "1991-02-06",
"gender": 2,
"gender_name": "Female",
"phone": "+132311233411",
"passport_no": null,
"nationality": "American",
"nationality_code": "US",
"residency": "United States",
"residency_code": "US",
"room_no": null,
"reservation_no": null,
"hotel_status": null,
"facebook_id": null,
"yas_id": "8f627d10-1abc-44d8-b964-a7816388173a",
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"online": false,
"connection_status": 0,
"connection_method": "",
"total_downloaded_data": 0,
"total_uploaded_data": 0,
"last_connection_time": null,
"last_attempt_time": null,
"last_ssid_name": null,
"vendor": null,
"location_id": "92239FF342CA23",
"location_name": "Dining East",
"last_visit_date": "2016-01-21T11:41:39.000000Z",
"visit_count": 4,
"receive_marketing": 0,
"checkin_date": null,
"checkout_date": null,
"direct_login": 0,
"tags": [],
"device_tags": [],
"type": 1,
"phone_verified_at": null,
"whatsapp_verified_at": null,
"email_verified_at": null,
"smart_login": "Inactive",
"image_url": null,
"created_at": "2016-01-21T11:41:39.000000Z",
"updated_at": "2016-01-22T07:29:58.000000Z"
}
}
Unprocessable Entity
HTTP/1.1 422 Unprocessable Entity
{
"message": "The given data was invalid.",
"errors": {
"location_id": [
"The location field is required."
]
}
}
Update Guest
Update guest information
Endpoint
PUT /guests/:id
Rate Limit
This endpoint has a rate limit of 60 requests per minute.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| :id | string | ✔️ | End-user ID |
| location_id | string | ✔️ | Location / venue ID (required if user has guests.manage-global permission) |
| name | string | Full name of end-user (min 5 characters) | |
| first_name | string | First name of end-user | |
| last_name | string | Last name of end-user | |
| string | Email address. Must be unique for the same tenant | ||
| birth_date | date | Date of birth (format: yyyy-mm-dd). Also accepts birthday | |
| gender | integer | Gender 0: Unknown, 1: Male, 2: Female | |
| phone | string | Mobile / phone number | |
| passport_no | string | Passport number | |
| nationality | string | Nationality code. ISO 3166-1 alpha-2 country code (2 characters) | |
| residency | string | Residency code. ISO 3166-1 alpha-2 country code (2 characters) | |
| room_no | integer | Room number (1-9999) | |
| reservation_no | string | Reservation number | |
| hotel_status | integer | Hotel status null: N/A, 0: Check-out, 1: Check-in | |
| custom_data | string | Custom data (JSON string) | |
| custom_field_1 | string | Custom field 1 | |
| custom_field_2 | string | Custom field 2 | |
| custom_field_3 | string | Custom field 3 | |
| direct_login | integer | Direct login status 0: Disabled, 1: Enabled | |
| tags | array | Array of tag names to assign to guest | |
| tag_type | integer | Tag type | |
| marketing_consent | integer | 0: Opted-out, 1: Opted-in | |
| avatar | file | Avatar image file (max 2048 KB) |
Response
Tips
HTTP/1.1 200 OK
{
"data": {
"id": "FBN2234",
"username": "269FBDC5",
"name": "Sally Brown",
"first_name": "Sally",
"last_name": "Brown",
"email": "sbrown@iperasolutions.com",
"birth_date": "1991-02-06",
"gender": 2,
"gender_name": "Female",
"phone": "+13231123341",
"passport_no": null,
"nationality": "American",
"nationality_code": "US",
"residency": "United States",
"residency_code": "US",
"room_no": null,
"reservation_no": null,
"hotel_status": null,
"facebook_id": null,
"yas_id": "8f627d10-1abc-44d8-b964-a7816388173a",
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"online": false,
"connection_status": 0,
"connection_method": "",
"total_downloaded_data": 0,
"total_uploaded_data": 0,
"last_connection_time": null,
"last_attempt_time": null,
"last_ssid_name": null,
"vendor": null,
"location_id": "92239FF342CA23",
"location_name": "Dining East",
"last_visit_date": "2016-01-21T11:41:39.000000Z",
"visit_count": 4,
"receive_marketing": 0,
"checkin_date": null,
"checkout_date": null,
"direct_login": 0,
"tags": [],
"device_tags": [],
"type": 1,
"phone_verified_at": null,
"whatsapp_verified_at": null,
"email_verified_at": null,
"smart_login": "Inactive",
"image_url": null,
"created_at": "2016-01-21T11:41:39.000000Z",
"updated_at": "2016-01-22T07:29:58.000000Z"
}
}
