Sign In Enterprise GroupVisits API
All endpoints related to Group Visits (Appointments).
All endpoints related to Group Visits (Appointments).
openapi: 3.0.2
info:
title: Sign In Solutions VMS AuditLogs GroupVisits API
version: 0.21.0
x-logo:
url: https://signinenterprise.com/wp-content/uploads/tg-logo-light@2.png
backgroundColor: '#FFFFFF'
altText: Sign In Solutions
href: https://signinsolutions.com/signinenterprise
description: 'The Traction Guest API is currently under limited release to select customers as we gather and iterate on feedback.
# Getting Started
If you are interested in getting early access to the API, please send us an email to [support@tractionguest.com](mailto:support@tractionguest.com).
We will also add you to our Slack channel where you can ask questions and get further help.
# Terms and Conditions
Please visit: [https://signinsolutions.com/compliance-hub](https://signinsolutions.com/compliance-hub)
# Versioning
This API follows [semantic versioning](https://semver.org/), which follows the `Major`.`Minor`.`Patch` format.
* The `Major` number increments when potentially incompatible changes are made.
* The `Minor` number increments when backwards-compatible additions are made.
* The `Patch` number increments when backwards-compatible bug-fixes are made.
'
contact:
name: API Support
url: https://signinsolutions.com/signinenterprise
email: support@tractionguest.com
servers:
- url: '{domain}'
variables:
domain:
enum:
- https://us.tractionguest.com/api/v3
- http://localhost:3000/api/v3
default: https://us.tractionguest.com/api/v3
security:
- TractionGuestAuth:
- all
- openid
- admin:webhooks
- watchlists:*
- watchlists:read
- watchlists:write
- users:*
- users:read
- users:write
- visitors:*
- visitors:read
- visitors:write
- parking:*
- parking:read
- parking:write
- locations:*
- locations:read
- locations:write
- hosts:*
- hosts:read
- hosts:write
- email_templates:*
- email_templates:read
- email_templates:write
tags:
- name: GroupVisits
description: All endpoints related to Group Visits (Appointments).
paths:
/group_visits:
get:
summary: List all Group Visits (Appointments)
tags:
- GroupVisits
responses:
'200':
description: Successful response - returns an array of `GroupVisit` entities.
content:
application/json:
schema:
$ref: ./models/PaginatedGroupVisitsList.v1.yaml
examples:
default:
value:
pagination:
total_records: 0
current_offset: 0
next_offset: 0
last_id: 0
limit: 0
group_visits:
- id: 1
location:
id: 1
name: Location Name
max_capacity: 10
timezone: UTC
hosts:
- id: 0
email: email@sample.com
first_name: John
last_name: Smith
profile_pic_url: string
department: Accounting
mobile_number: string
name: Appointment Name
start_time: '2021-01-01T12:34:56Z'
end_time: '2021-01-01T12:34:56Z'
created_at: '2021-01-01T12:34:56Z'
updated_at: '2021-01-01T12:34:56Z'
registration_limit: 5
registration_url: null
invites_count: 0
unconfirmed_registrations_count: 0
manual_registration_approval: true
public_registration_enabled: true
'400':
description: A generic error
content:
application/json:
schema:
$ref: ./models/ErrorsList.v1.yaml
'401':
description: You do not have permission to view this
'403':
description: You do not have permission for this action
security:
- TractionGuestAuth:
- all
- visitors:*
- visitors:read
operationId: getGroupVisits
description: Gets a list of all `GroupVisit` entities (Appointments).
parameters:
- schema:
type: string
in: query
name: limit
description: Limits the results to a specified number. Defaults to 50.
- schema:
type: string
in: query
name: offset
description: Offsets the results to a specified number. Defaults to 0.
- schema:
type: string
in: query
name: location_ids
description: A comma-separated string of locations IDs, to only show group visits (appointments) from those locations.
- schema:
type: string
in: query
name: sort_with
description: 'A combination of attribute and direction, joined with an underscore, for sorting. Valid attributes are: `created_at`, `updated_at`, `name`, and `start_time`. Valid directions are `asc` and `desc`. E.g., `name_desc`, `start_time_asc`.'
post:
summary: Create a new Group Visit (Appointment)
security:
- TractionGuestAuth:
- all
- visitors:*
- visitors:write
operationId: createGroupVisit
responses:
'201':
description: Created the `GroupVisit`
content:
application/json:
schema:
$ref: ./models/GroupVisit.v1.yaml
examples:
default:
value:
id: 0
location:
id: 0
name: Location Name
max_capacity: 0
timezone: UTC
hosts:
- id: 0
email: email@sample.com
first_name: Jane
last_name: Doe
profile_pic_url: string
department: Engineering
mobile_number: string
name: Appointment Name
start_time: '2021-01-01T12:34:56Z'
end_time: '2021-01-01T12:34:56Z'
created_at: '2021-01-01T12:34:56Z'
updated_at: '2021-01-01T12:34:56Z'
registration_limit: 0
registration_url: url
invites_count: 0
unconfirmed_registrations_count: 0
manual_registration_approval: true
public_registration_enabled: true
'400':
description: A generic error
content:
application/json:
schema:
$ref: ./models/ErrorsList.v1.yaml
'401':
description: You do not have permission to create this
'403':
description: You do not have permission for this action
'422':
description: Your request was not formatted correctly
description: Creates a `GroupVisit` (Appointment)
parameters:
- $ref: '#/components/parameters/idempotencyKey'
requestBody:
content:
application/json:
schema:
$ref: ./models/GroupVisitCreateParams.v1.yaml
description: ''
tags:
- GroupVisits
/group_visits/{group_visit_id}:
parameters:
- schema:
type: string
name: group_visit_id
in: path
required: true
get:
summary: Get a Group Visit (Appointment)
tags:
- GroupVisits
responses:
'200':
description: Successful response - returns a single `GroupVisit`.
content:
application/json:
schema:
$ref: ./models/GroupVisit.v1.yaml
examples:
default:
value:
id: 0
location:
id: 0
name: Location Name
max_capacity: 0
timezone: UTC
hosts:
- id: 0
email: demo@example.com
first_name: Jack
last_name: Frost
profile_pic_url: url
department: Weather Monitoring
mobile_number: string
name: Appointment Name
start_time: '2021-01-01T12:34:56Z'
end_time: '2021-01-01T12:34:56Z'
created_at: '2021-01-01T12:34:56Z'
updated_at: '2021-01-01T12:34:56Z'
registration_limit: 0
registration_url: url
invites_count: 0
unconfirmed_registrations_count: 0
manual_registration_approval: true
public_registration_enabled: true
'400':
description: A generic error
content:
application/json:
schema:
$ref: ./models/ErrorsList.v1.yaml
'401':
description: You do not have permission to view this GroupVisit
'403':
description: You do not have permission for this action
'404':
description: The GroupVisit does not exist
security:
- TractionGuestAuth:
- all
- visitors:*
- visitors:read
operationId: getGroupVisit
description: Gets the details of a single instance of a `GroupVisit`.
put:
summary: Update a Group Visit (Appointment)
security:
- TractionGuestAuth:
- all
- visitors:*
- visitors:write
operationId: updateGroupVisit
responses:
'202':
description: Successful response
content:
application/json:
schema:
$ref: ./models/GroupVisit.v1.yaml
examples:
default:
value:
id: 0
location:
id: 0
name: Location Name
max_capacity: 0
timezone: UTC
hosts:
- id: 0
email: email@sample.com
first_name: Jane
last_name: Doe
profile_pic_url: string
department: Engineering
mobile_number: string
name: Appointment Name
start_time: '2021-01-01T12:34:56Z'
end_time: '2021-01-01T12:34:56Z'
created_at: '2021-01-01T12:34:56Z'
updated_at: '2021-01-01T12:34:56Z'
registration_limit: 0
registration_url: url
invites_count: 0
unconfirmed_registrations_count: 0
manual_registration_approval: true
public_registration_enabled: true
'400':
description: A generic error
headers: {}
content:
application/json:
schema:
$ref: ./models/ErrorsList.v1.yaml
'401':
description: You do not have permission to view this GroupVisit
'403':
description: You do not have permission for this action
'404':
description: The GroupVisit does not exist
'422':
description: Your request was not formatted correctly
description: Updates an existing `GroupVisit` (Appointment).
parameters:
- $ref: '#/components/parameters/idempotencyKey'
requestBody:
content:
application/json:
schema:
$ref: ./models/GroupVisitUpdateParams.v1.yaml
description: ''
tags:
- GroupVisits
delete:
summary: Delete a Group Visit (Appointment)
security:
- TractionGuestAuth:
- all
- visitors:*
- visitors:write
operationId: deleteGroupVisit
responses:
'204':
description: The `GroupVisit` has been deleted
'400':
description: There was an error in trying to delete the `GroupVisit`
description: Deletes a single instance of `GroupVisit` (Appointment).
parameters:
- $ref: '#/components/parameters/idempotencyKey'
tags:
- GroupVisits
components:
parameters:
idempotencyKey:
name: Idempotency-Key
description: An optional idempotency key to allow for repeat API requests. Any API request with this key will only be executed once, no matter how many times it's submitted. We store idempotency keys for only 24 hours. Any `Idempotency-Key` shorter than 10 characters will be ignored
schema:
type: string
in: header
required: false
securitySchemes:
TractionGuestAuth:
openIdConnectUrl: https://us.tractionguest.com/.well-known/openid-configuration
type: openIdConnect