Viviot.Api

<back to all web services

ExternalReservations

Requires Authentication
Requires the role:ReservationPublisher
The following routes are available for this service:
POST/client/reservationAccepts and stores a collection of reservations from an external system.
ExternalReservationsResponse Parameters:
NameParameterData TypeRequiredDescription
ReservationsformList<ReservationView>No
BaseResponse Parameters:
NameParameterData TypeRequiredDescription
ResponseStatusformResponseStatusNo
ReservationView Parameters:
NameParameterData TypeRequiredDescription
IdformGuidNo
StateformReservationStateNo
ReasonDeniedformstringNo
GuestsformList<ReservationGuestDto>No
AdditionalDataformReservationAdditionalDataDtoNo
VisitDataformReservationVisitDataDtoNo
AccessTemplatesformList<ReservationAccessTemplateDto>No
ExternalIdformstringNo
ReservationGuestInfosformList<ReservationGuestInfoDto>No
ReservationState Enum:
NameValue
New0
Assigned10
WaitingForConfirmation15
PendingActivation20
Active30
Expired40
Denied50
Cancelled60
ReservationGuestDto Parameters:
NameParameterData TypeRequiredDescription
IdformGuid?No
ViviotIdformstringNo
GuestFirstNameformstringNo
GuestLastNameformstringNo
EmailformstringNo
PhoneformstringNo
GuestTypeformGuestTypeNo
Iso3166alpha2CodeformstringNo
SendInvitationformboolNo
SendAccountActivationEmailformboolNo
GuestType Enum:
NameValue
Business1
Leisure2
ReservationAdditionalDataDto Parameters:
NameParameterData TypeRequiredDescription
LicensePlatesformList<string>No
CommentformstringNo
WelcomeMessageformstringNo
CompanyformstringNo
AccessCardsformList<AccessCardDataDto>No
AccessCardDataDto Parameters:
NameParameterData TypeRequiredDescription
CardNumberformstringNo
ThingIdsformList<Guid>No
ReservationVisitDataDto Parameters:
NameParameterData TypeRequiredDescription
VisitTypeformVisitTypeNo
CheckinformDateTime?No
CheckoutformDateTime?No
DoesNotContainTimeInfoformbool?No
VisitType Enum:
NameValue
DateTime1
AccessCount2
ReservationAccessTemplateDto Parameters:
NameParameterData TypeRequiredDescription
IdformGuidNo
NameformstringNo
DescriptionformstringNo
IsAvailableformboolNo
OccupiedUntilformDateTime?No
ReservationIdentifierformstringNo
AccessCodeInitializationStrategyformintNo
TagsformList<TagDto>No
SmartspacesformList<ReservationSmartSpaceDto>No
ThingsformList<ThingAccessTemplateDto>No
TagDto Parameters:
NameParameterData TypeRequiredDescription
IdformGuidNo
NameformstringNo
TagGroupIdformGuidNo
ReservationSmartSpaceDto Parameters:
NameParameterData TypeRequiredDescription
IdformGuidNo
NameformstringNo
AccessFromformTimeSpan?No
AccessToformTimeSpan?No
AccessCountformint?No
AccessCardNumbersformstringNo
ThingAccessTemplateDto Parameters:
NameParameterData TypeRequiredDescription
IdformGuid?No
OrganizationIdformGuidNo
ThingIdformGuidNo
ThingNameformstringNo
ThingTypeNameformstringNo
ExclusiveformboolNo
AvailableFromformint?No
AvailableToformint?No
AccessCountformint?No
AccessLevelformstringNo
PermissionformList<string>No
ReservationGuestInfoDto Parameters:
NameParameterData TypeRequiredDescription
GuestFirstNameformstringNo
GuestLastNameformstringNo
CountryformstringNo
DateOfBirthformDateTimeNo
DocumentTypeformIdDocumentTypeNo
DocumentNumberformstringNo
GenderformGenderNo
TimestampformDateTimeNo
EmailformstringNo
IdDocumentType Enum:
NameValue
ObmejnaPrepustnica1
PotneListinePoMednarodniPogodbi2
OsebnaIzkaznica3
OrozniList4
PotniList5
UpravneListine6
VozniskoDovoljenje7
Gender Enum:
NameValue
Male1
Female2

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /client/reservation HTTP/1.1 
Host: api.4spaces.io 
Accept: application/json
Content-Type: application/json
Content-Length: length

{}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"reservations":[{"id":"00000000000000000000000000000000","state":0,"reasonDenied":"String","guests":[{"id":"00000000000000000000000000000000","viviotId":"String","guestFirstName":"String","guestLastName":"String","email":"String","phone":"String","guestType":1,"iso3166alpha2Code":"String","sendInvitation":false,"sendAccountActivationEmail":false}],"additionalData":{"licensePlates":["String"],"comment":"String","welcomeMessage":"String","company":"String","accessCards":[{"cardNumber":"String","thingIds":["00000000000000000000000000000000"]}]},"visitData":{"visitType":1,"checkin":-62135596800000,"checkout":-62135596800000,"doesNotContainTimeInfo":false},"accessTemplates":[{"id":"00000000000000000000000000000000","name":"String","description":"String","isAvailable":false,"occupiedUntil":-62135596800000,"reservationIdentifier":"String","accessCodeInitializationStrategy":0,"tags":[{"id":"00000000000000000000000000000000","name":"String","tagGroupId":"00000000000000000000000000000000"}],"smartspaces":[{"id":"00000000000000000000000000000000","name":"String","accessFrom":"00:00:00","accessTo":"00:00:00","accessCount":0,"accessCardNumbers":"String"}],"things":[{"id":"00000000000000000000000000000000","organizationId":"00000000000000000000000000000000","thingId":"00000000000000000000000000000000","thingName":"String","thingTypeName":"String","exclusive":false,"availableFrom":0,"availableTo":0,"accessCount":0,"accessLevel":"String","permission":["String"]}]}],"externalId":"String","reservationGuestInfos":[{"guestFirstName":"String","guestLastName":"String","country":"String","dateOfBirth":-62135596800000,"documentType":1,"documentNumber":"String","gender":1,"timestamp":-62135596800000,"email":"String"}]}],"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}