The group endpoint allows you to return a list of your groups along with the group ID, name, and group type.
GET client-api/v1/groups
There are no additional parameters.
Root Array
.
Key | Type | Description |
---|---|---|
id | String | The ID of the visitor group. |
name | String | The name of the visitor group. |
type | String | The visitor group’s type. |
[
{
"id": 1,
"name": "Visitors",
"type": "non-returning"
},
{
"id": 2,
"name": "Employees",
"type": "returning"
},
{
"id": 3,
"name": "Deliveries",
"type": "delivery"
}
]
There are no parameters for this resource so errors are limited to internal server errors or not found (404) errors.
The group member's endpoint allows you to pull down a list of returning visitors for a specific group. The data is paginated for up to 200 members per page. Each member describes key information such as personal fields, permissions, last in and out and more.
To locate your group id, go to https://my.signinapp.com/manage and click into the
Group you wish to request data for. The group id will be visible in the URL after /group
.
GET client-api/v1/groups/<group_id>/members
There are no additional parameters.
The response returned from the group members endpoint is paginated. Use the links.next
to request subsequent pages of
data. On the final page, the links.next
will have a null
value.
Root Object
Key | Type | Description |
---|---|---|
links | Object | Key values of links to other paginated history results for this query. |
meta | Object | Information about the result set. |
data | Array | A list of returning visitor resources. |
Links Object
Pagination links.
Key | Type | Description |
---|---|---|
first | String | First page URL. |
last | String | Last page URL. |
prev | String Null | Previous page URL. |
next | String Null | Next page URL. |
Meta Object
Key | Type | Description |
---|---|---|
current_page | Number | The current requested page number. |
from | Number | From record position. |
path | String | Request URL. |
per_page | Number | Number of records returned per page. |
to | Number | To record position. |
{
"links": {
"first": "https://example.signinapp.com/client-api/v1/groups/123/members?page=1",
"last": "https://example.signinapp.com/client-api/v1/groups/123/members?page=2",
"prev": null,
"next": "https://example.signinapp.com/client-api/v1/groups/123/members?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"path": "https://example.signinapp.com/client-api/v1/groups/123/members",
"per_page": 200,
"to": 200
},
"data": [
{
"id": 456,
"group_id": 123,
"site_id": null,
"qr_code": null,
"personal_fields": {},
"photo_url": "https://cdn.host.net/photos/n23KjhFh3j2h42399AL.jpg",
"last_in": "2020-02-06T17:46:00Z",
"last_out": "2020-02-07T09:13:25Z",
"status": "signed_out",
"permissions": {
"can_access_firelist": true,
"can_pre_reg": false,
"can_mobile_sign_in": true,
"can_view_sign_in_history": false,
"can_auto_sign_in": false,
"can_access_today": false
}
},
{
"..."
}
]
}
Beyond internal server errors, the following are likely response types.
Code | Description |
---|---|
404 | Either the specified resource, or one of the parameters does not exist. Check the group id. |
422 | A validation error occurred. This is likely to be the selected group is not of type returning. |
The History endpoint allows you to build and automate your own reports for each site. By specifying a start and end date no more than 92 days apart, you can request all sign in/out activity for standard visitors and repeat visitors such as staff. These results can further be filtered by group or a specific group member if required.
To locate your site id, go to https://my.signinapp.com/manage and click into the
Site you wish to request data for. The site id will be visible in the URL after /site
.
GET client-api/v1/sites/<site_id>/history
Key | Type | Required | Description |
---|---|---|---|
date_from | String | true | The date to search the history from. Expected format is ISO-8601 |
date_to | String | true | The date to search the history until. Expected format is ISO-8601 |
group_id | Number | false | The ID of a visitor group to filter the history by. |
returning_visitor_id | Number | false | The ID of a returning visitor to filter the history by. |
Date range
The date range for the history endpoint up to a maximum of 92 days.
The response returned from the history endpoint is paginated. Use the links.next
to request subsequent pages of
data. On the final page, the links.next
will have a null
value.
Root Object
Key | Type | Description |
---|---|---|
links | Object | Key values of links to other paginated history results for this query. |
meta | Object | Information about the result set. |
data | Array | A list of visitor resources. |
Links Object
Pagination links.
Key | Type | Description |
---|---|---|
first | String | First page URL. |
last | Null | Last page URL. This is not used and will always be null. |
prev | String Null | Previous page URL. |
next | String Null | Next page URL. |
Meta Object
Key | Type | Description |
---|---|---|
current_page | Number | The current requested page number. |
from | Number | From record position. |
path | String | Request URL. |
per_page | Number | Number of records returned per page. |
to | Number | To record position. |
{
"links": {
"first": "https://example.signinapp.com/client-api/v1/sites/123/history?date_from=2020-01-01T00%3A00%3A00&date_to=2020-02-29T23%3A59%3A59&page=1",
"last": null,
"prev": null,
"next": "https://example.signinapp.com/client-api/v1/sites/123/history?date_from=2020-01-01T00%3A00%3A00&date_to=2020-02-29T23%3A59%3A59&page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"path": "https://example.signinapp.com/client-api/v1/sites/123/history",
"per_page": 30,
"to": 30
},
"data": [
{
"id": 456,
"returning_visitor_id": null,
"name": "Jane Doe",
"photo_url": null,
"badge_url": null,
"status": "signed_out",
"in_datetime": "2020-02-06T17:46:00Z",
"out_datetime": "2020-02-07T09:13:25Z",
"expected_datetime": null,
"additional_fields": {
"Visiting": "John Doe"
},
"personal_fields": []
},
{
"..."
}
]
}
Beyond internal server errors, the following are likely response types.
Code | Description |
---|---|
404 | Either the specified resource, or one of the parameters does not exist. |
422 | A validation error occurred. Check the inputted value against the request parameters description. |
The Today endpoint allows you to build a live view of who's signed in to your site. It also returns a list of pre-registered guests. Sign in activity is grouped, making it easy to build a dashboard for a specific visitor group, show upcoming visitors or highlight the most recent sign in on your digital signage.
To locate your site id, go to https://my.signinapp.com/manage and click into the
Site you wish to request data for. The site id will be visible in the URL after /site
.
GET client-api/v1/sites/<site_id>/today
No required or optional parameters.
Root Array
. A list of group resources.
[
{"..."},
{"..."}
]
[{
"id": 456,
"name": "Visitors",
"type": "non-returning",
"visitors": []
},
{
"id": 654,
"name": "Staff",
"type": "returning",
"visitors": [
{
"id": 789,
"returning_visitor_id": 987,
"name": "John Smith",
"photo_url": "https://example.com/path/to/image",
"badge_url": null,
"status": "signed_in",
"in_datetime": "2019-12-12T12:12:12Z",
"out_datetime": null,
"expected_datetime": null,
"additional_fields": {
"Company": "Acme Co",
"Invite Email": "john.smith@example.com"
},
"personal_fields": {
"name": "John Smith",
"email": "john.smith@example.com",
"mobile": "",
"role": "Manager"
}
}
]
}]
There are no parameters for this resource so errors are limited to internal server errors or not found (404) errors.
The Spaces endpoint allows you to build your own reports for Spaces bookings. By specifying a start and end date no more than 60 days apart, you can request all bookings during that period. These results can then be filtered by space, zone, and category.
To locate your site id, go to https://my.signinapp.com/manage and click on the Site you wish to request data for. The site id will be visible in the URL after /site.
GET client-api/v1/spaces/<site_id>/bookings
Key | Type | Required | Description |
---|---|---|---|
filter[date_between] | String | true | The date range to search the bookings between. Expected format is ISO-8601 |
filter[site_id] | Number | true | The ID of the site to filter the history by. |
filter[returning_visitor_id] | Number | false | The ID of a returning visitor to filter the history by. |
filter[space_id] | String | false | The string ID of a specific space |
filter[zone_id] | String | false | The string ID of a specific zone |
With the Spaces booking endpoint you need to use the Filter option to set the timeframe of the API call or to filter with additional perameters. The format for this is ?filter[]
for the first filter and then &filter[]
for any additional filters. The request key above goes inside the square brackets. For example:
?filter[date_between]=2023-05-01,2023-05-31&filter[returning_visitor_id]=6462197
This request ould return bookings from the 1st of May 2023 until the 31st May 2023 for the visitor with the ID of 6462197.
If you'd like to include Space or Zone IDs in your API call you can find these from the Sign In App portal. Click the Spaces
tab then select either the Space or Zone from the list on the left side of the screen. The Space or Zone ID is the alphanumerical value at the end of the URL.
The response returned from the spaces endpoint is paginated. Use the links.next to request subsequent pages of data. On the final page, the links.next will have a null value.
Root Object
Key | Type | Description |
---|---|---|
links | Object | Key values of links to other paginated history results for this query. |
meta | Object | Information about the result set. |
data | Array | A list of visitor resources. |
Links Object
Pagination links.
Key | Type | Description |
---|---|---|
first | String | First page URL. |
last | Null | Last page URL. This is not used and will always be null. |
prev | String Null | Previous page URL. |
next | String Null | Next page URL. |
Meta Object
Key | Type | Description |
---|---|---|
current_page | Number | The current requested page number. |
from | Number | From record position. |
path | String | Request URL. |
per_page | Number | Number of records returned per page. |
to | Number | To record position. |
{
"data": [
{
"id": 1201999,
"site_space_id": 23156,
"returning_visitor": {
"id": 2935520,
"name": "Joe Bloggs",
"photo_url": null
},
"space": {
"id": "MTHUFKkBMj",
"name": "Desk 1",
"photo": null,
"category": "desk",
"description": null,
"capacity": 1,
"zones": [
{
"name": "Floor 1"
}
]
},
"start_date": "2022-11-21T17:00:00Z",
"end_date": "2022-11-21T18:00:00Z",
"occupancy": 1,
"note": null
}
Code | Description |
---|---|
404 | Either the specified resource, or one of the parameters does not exist. Check the group id. |
422 | A validation error occurred. This is likely to be the selected group is not of type returning. |