Skip to main content

This application provides appointment functionality for scheduling a video call between an agent and a customer

info

You are viewing REST API documentation. This documentation is auto-generated from a swagger specification which itself is generated from annotations in the source code of the project. It is possible that this documentation includes bugs and that code samples are incomplete or wrong.

Authentication

  • API Key (jwtBearerToken)
    • Parameter Name: Authorization, in: header. Authentication and authorization using a valid JWT token

Appointments

Retrieve All Appointments with Optional Filtering

GET /api/appointments/ HTTP/1.1
Accept: application/json

Retrieves a paginated list of all available appointments, with the ability to apply filters based on organizer IDs, appointment durations, and date ranges. The use of certain filters, specifically organizerId, is dependent on the user's role.

NOTE:

  • ROLE_SUPERVISOR: Can specify one or multiple organizerId values to filter appointments by different organizers. If no organizerId is provided, appointments for all organizers specific to the application will be retrieved.
  • Other Roles (ROLE_AGENT, ROLE_CLIENT_SERVICE): The organizerId parameter is ignored, and appointments are automatically filtered based on the current user's ID. Only appointments where the user is the organizer will be retrieved.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR, or ROLE_CLIENT_SERVICE

Parameters

ParameterInTypeRequiredDescription
applicationIdquerystringfalseUnique application identifier
organizerIdqueryarray[string]falseOrganizerIDs filters appointments by organizer.
durationqueryarray[string]falseSlots filters appointments by their duration.
rangequeryarray[string]falseRange filters appointments within a specified start and end date range.
pageSizequeryinteger(int64)falsePage size
pageNumberqueryinteger(int64)falsePage number
sortOrderquerystringfalseasc or desc
sortFieldquerystringfalseField to use for sort
undefinedundefinedundefinedfalsenone
Detailed descriptions

organizerId: OrganizerIDs filters appointments by organizer. It accepts a list of organizer ID values (comma-separated). This filter is applicable only when authorized with ROLE_SUPERVISOR; otherwise, it is ignored.

duration: Slots filters appointments by their duration. It accepts a list of duration values (comma-separated) in ISO 8601 format.

range: Range filters appointments within a specified start and end date range. It accepts a range (comma-separated) specified as start and end dates in UTC, in ISO 8601 format.

Enumerated Values
ParameterValue
sortOrderasc
sortOrderdesc

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneFindAppointmentsResponsePaged
400Bad RequestBadRequest. The request was malformed or missing required query parameters.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. No appointments found matching the criteria.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"content": [
{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
],
"pageCount": 0,
"pageNumber": 1,
"pageSize": 25,
"sortField": "string",
"sortOrder": "asc",
"total": 0
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X GET /api/appointments/ \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Schedule a New Appointment

POST /api/appointments/ HTTP/1.1
Content-Type: application/json
Accept: application/json

Creates a new appointment and optionally returns RoomAccess details if the appointment has been activated. Activation can occur either explicitly through the /appointments/activate endpoint or automatically via the autoActivate property set at the application level.

This operation also supports specifying interaction routing information, which enables the explicit setting of a Genesys Widget deployment of choice and accommodates different routing types for customer interactions. Interaction routing is crucial for directing the scheduled appointment through the desired channels and ensuring the optimal engagement experience.

For detailed information on interaction routing and how to configure it in your ScheduleAppointment requests, refer to our comprehensive guide: Interaction Routing for Appointments.

NOTE:

  • RoomAccess information, including the appointment room's URL and expiration time, is only returned for appointments that have been activated. This ensures that room access details are securely managed and only made available when necessary.
  • If application-specific notifications are active and properly configured, relevant notifications will be dispatched to inform customers accordingly.

Required authorization: ROLE_AGENT or ROLE_CLIENT_SERVICE

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"customer": {
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"username": "ewingb@myorg.com"
},
"duration": "\"PT5M\"",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": "{\"deploymentId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"} or {\"touchpointId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"}",
"type": "GENESYS_CLOUD_FLOW or TALKDESK_DIGITAL_CONNECT"
}
},
"locale": "\"en-GB\"",
"metadata": {
"prop1": "value1"
},
"notes": "\"CRM ref: 3nv-1gt-4rt\"",
"notificationHeaders": "{\"x-channel\": widget\"}",
"start": "\"2022-01-31T19:00:00.0Z\"",
"timezone": "\"Europe/Berlin\"",
"title": "\"Product installation review\""
}

Parameters

ParameterInTypeRequiredDescription
bodybodyScheduleAppointmentRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/appointments/ \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Update an Existing Appointment

PUT /api/appointments/ HTTP/1.1
Content-Type: application/json
Accept: application/json

Updates the details of an existing appointment, such as the title, notes, and metadata. This endpoint allows for the modification of appointment information post-creation, ensuring the appointment data remains relevant and up-to-date.

NOTE: Sending empty data for any field will overwrite any previously saved information for that field. This behavior is intentional to allow for the clearing of information. Ensure that only fields intended to be updated or cleared are included in the request.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR, or ROLE_CLIENT_SERVICE

Request body

{
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": {
"property1": "string",
"property2": "string"
},
"title": "Product installation review"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyUpdateAppointmentRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X PUT /api/appointments/ \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Delete an Appointment

DELETE /api/appointments/{id} HTTP/1.1

Deletes an existing appointment identified by its unique ID. This action permanently removes the appointment from the system, along with any associated participant and scheduling information. If application-specific notifications are active and configured correctly, relevant notifications will be sent to inform involved participants about the cancellation.

IMPORTANT: Deletion is irreversible. It is advisable to confirm the deletion intent and ensure that application-specific notifications are set up correctly to alert participants of the appointment's cancellation.

NOTE: If application-specific notifications are active and properly configured, relevant notifications will be dispatched to inform customers.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR, or ROLE_CLIENT_SERVICE

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId specifies the unique identifier of the appointment to delete.

Responses

Overview
StatusMeaningDescriptionSchema
204No ContentNoContent. Successful deletion of the appointment. No additional content is returned, but relevant notifications may be dispatched if configured.None
401Unauthorizeddescription: Unauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden for the user's role.None
404Not FoundStatusNotFound. The specified appointment could not be found, indicating that it may already have been deleted or never existed.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X DELETE /api/appointments/{id} \
-H 'Authorization: API_KEY'

Retrieve an Appointment by ID

GET /api/appointments/{id} HTTP/1.1
Accept: application/json

Retrieves detailed information about an existing appointment using its unique identifier. This endpoint enables users with appropriate roles to access appointment details, ensuring efficient management and coordination.

NOTE:

  • Accessing this endpoint with ROLE_CUSTOMER requires verification of the 'conferenceId' provided in the JWT token, ensuring that customers can only access appointments relevant to them.
  • RoomAccess information, including the appointment room's URL and expiration time, is only returned for appointments that have been activated. This ensures that room access details are securely managed and only made available when necessary.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR, ROLE_CUSTOMER, or ROLE_CLIENT_SERVICE

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueUnique appointment identifier

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: None

Code samples

curl -X GET /api/appointments/{id} \
-H 'Accept: application/json'

Set Appointment Interaction InProgress (Internal Use)

PUT /api/appointments/{id}/end HTTP/1.1
Accept: application/json

Update the state of an existing appointment interaction by its unique appointment id. This endpoint is for internal use only and requires the 'ROLE_AGENT' or 'ROLE_CUSTOMER' authorization.

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueUnique appointment identifier

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. No appointment found matching the specified id.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X PUT /api/appointments/{id}/end \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Delete a Participant from an Appointment

DELETE /api/appointments/{id}/participants/{pid} HTTP/1.1
Accept: application/json

Removes a specific participant from an existing appointment by their unique identifier. This action allows for the adjustment of the participant list, ensuring that only relevant users are included in the appointment.

Required authorization: ROLE_AGENT or ROLE_SUPERVISOR

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId specifies the unique identifier of the appointment from which a participant will be deleted.
participantIdpathstringtrueParticipantId specifies the unique identifier of the participant to delete.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment or participant could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X DELETE /api/appointments/{id}/participants/{pid} \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Get Participant Details

GET /api/appointments/{id}/participants/{pid} HTTP/1.1
Accept: application/json

Retrieves the details of a specific participant belonging to an existing appointment. The accessibility of participant details varies based on the user's role.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR or ROLE_CUSTOMER

NOTE:

  • ROLE_CUSTOMER: Authorized to retrieve details of participants with type CUSTOMER only. Attempting to retrieve details of a participant type CUSTOMER after an appointment has expired may result in a 'StatusNotFound' error.
  • When accessing with ROLE_CUSTOMER, the relevant 'conferenceId' from the JWT token will also be verified.

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId specifies the unique identifier of the appointment.
participantIdpathstringtrueParticipantId specifies the unique identifier of the participant.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetParticipantDetailsResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. No participant details found matching the criteria.None
500Internal Server ErrorInternalServerError. An unexpected error occurred while retrieving participant details.None
Examples

200 Response

{
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"type": "CUSTOMER",
"username": "ewingb@myorg.com"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X GET /api/appointments/{id}/participants/{pid} \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Update Participant State

PUT /api/appointments/{id}/participants/{pid} HTTP/1.1
Content-Type: application/json
Accept: application/json

Updates the state of a specific participant belonging to an existing appointment. The new state should be provided in the request body.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR or ROLE_CUSTOMER

NOTE:

  • ROLE_CUSTOMER: Authorized to update the state of participants with type CUSTOMER only. Attempting to update the state of a participant type CUSTOMER after an appointment has expired may result in a 'StatusNotFound' error.
  • When accessing with ROLE_CUSTOMER, the relevant 'conferenceId' from the JWT token will also be verified.

Request body

{
"state": "\"JOINED\""
}

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId specifies the unique identifier of the appointment.
participantIdpathstringtrueParticipantId specifies the unique identifier of the participant.
bodybodyobjectfalseRequest body containing the state of the participant.
» statebodystringfalseState specifies the new state of the participant.
Detailed descriptions

» state: State specifies the new state of the participant. Possible values are: "WAITING", "JOINED", "LEFT".

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. No appointment or participant found matching the criteria.None
500Internal Server ErrorInternalServerError. An unexpected error occurred while updating participant state.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X PUT /api/appointments/{id}/participants/{pid} \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Activate an Appointment

POST /api/appointments/activate/{id} HTTP/1.1
Accept: application/json

Explicitly activates a previously scheduled appointment, making it ready for use. If the appointment is already active, this operation will return the existing room details ensuring that the appointment's active state is preserved without duplication of resources.

NOTE: Activation of an appointment is necessary for it to be utilized fully. This process includes generating unique access details for virtual meeting rooms.

Required authorization: ROLE_CLIENT_SERVICE

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId is the unique identifier of the appointment to be activated.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneAppointmentActivationResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/appointments/activate/{id} \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Schedule New Appointment as Customer

POST /api/appointments/basic HTTP/1.1
Accept: application/json

Schedule a new appointment as a customer with OTP verification.

Required authorization: Basic authentication with OTP Verification

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred while scheduling the appointment.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: None

Code samples

curl -X POST /api/appointments/basic \
-H 'Accept: application/json'

Retrieve the Number of Scheduled Appointments within a Specified Time Frame

GET /api/appointments/count?applicationId=bf8215e5-a39e-490a-a0e2-07df6a3d8c1f&start=%222022-01-31T19%3A00%3A00.0Z%22&timeFrame=%22PT10H%22 HTTP/1.1
Accept: application/json

This endpoint returns a count of distinct appointments based on the application identifier, start time, and timeframe provided in the query parameters. It is useful for obtaining quick analytics on appointment scheduling volumes within specific intervals. No authorization is required to access this endpoint.

Parameters

ParameterInTypeRequiredDescription
applicationIdquerystringtrueUnique application identifier
startquerystring(date-time)trueStartTime is the UTC start date and time for counting appointments.
timeFramequerystring(duration)trueTimeFrame for searching scheduled appointments relative to each start date in ISO 8601 format.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneInline
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
anonymous[AppointmentCountResponse]falsenonenone
» countinteger(int64)falsenoneCount represents the number of appointments scheduled within the specified duration.
» durationstringfalsenoneDuration of the appointment, represented in ISO 8601 duration format.
» endstring(date-time)falsenoneEndTime is the scheduled end date and time of the appointment in UTC.
» startstring(date-time)falsenoneStartTime is the scheduled start date and time of the appointment in UTC.
» timezonestringfalsenoneTimeZone specifies the local time zone of the appointment.
Examples

200 Response

[
{
"count": 2,
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin"
}
]
caution

To perform this operation, you must be authenticated by means of one of the following methods: None

Code samples

curl -X GET /api/appointments/count?applicationId=bf8215e5-a39e-490a-a0e2-07df6a3d8c1f&start=%222022-01-31T19%3A00%3A00.0Z%22&timeFrame=%22PT10H%22 \
-H 'Accept: application/json'

DEPRECATED: Find Appointments Eligible for Activation

GET /api/appointments/eligible/?timeFrame={duration} HTTP/1.1

[DEPRECATED] This endpoint has been deprecated as appointment activations no longer have time constraints. Previously, it was used to find all scheduled appointments eligible for activation within a specified timeframe, with eligibility calculated relative to the appointment start date.

NOTE: All scheduled appointments not previously activated explicitly or via 'autoActivate' are now considered eligible for activation at any time, removing the need for time-based eligibility checks. This change is designed to simplify the activation process and enhance flexibility in managing appointments.

Required authorization: ROLE_CLIENT_SERVICE

Parameters

ParameterInTypeRequiredDescription
timeFramequerystring(duration)falseTimeFrame specifies the duration to search for eligible appointments from the start date.
Detailed descriptions

timeFrame: TimeFrame specifies the duration to search for eligible appointments from the start date. It is represented in ISO 8601 duration format.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneNone
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Response Headers
StatusHeaderTypeFormatDescription
200FindAllAppointmentsEligibleForActivationResponsearrayThe body of the response contains an array of appointments eligible for activation.
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X GET /api/appointments/eligible/?timeFrame={duration} \
-H 'Authorization: API_KEY'

Get Count of Overlapping Appointments

GET /api/appointments/overlap/count?applicationId=bf8215e5-a39e-490a-a0e2-07df6a3d8c1f&start=%222022-01-31T19%3A00%3A00.0Z%22&duration=%22PT5M%22 HTTP/1.1
Accept: application/json

Retrieves the number of overlapping appointments for a given application, based on specified start time and duration. An overlapping appointment is defined as any existing appointment, SCHEDULED or ACTIVATED, that intersects with the provided time range, considering both the start time and duration.

NOTE: Overlapping is evaluated based on the start time and duration you provide, identifying any appointments that would conflict within the specified timeframe. Useful for identifying potential scheduling conflicts in advance.

Required authorization: This endpoint does not require authorization.

Parameters

ParameterInTypeRequiredDescription
applicationIdquerystringtrueUnique application identifier
startquerystring(date-time)trueStartTime is the UTC start date and time for checking overlaps.
durationquerystring(duration)trueDuration of the appointment to check for overlaps in ISO 8601 format.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneAppointmentOverlapResponse
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternalServerErrorResponse. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"count": 0
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: None

Code samples

curl -X GET /api/appointments/overlap/count?applicationId=bf8215e5-a39e-490a-a0e2-07df6a3d8c1f&start=%222022-01-31T19%3A00%3A00.0Z%22&duration=%22PT5M%22 \
-H 'Accept: application/json'

Add an Agent as a Participant to an Existing Appointment

POST /api/appointments/participants/agents/ HTTP/1.1
Content-Type: application/json
Accept: application/json

Adds a participant of type AGENT to an existing appointment, enhancing the appointment's collaboration and handling capabilities. This operation is intended for roles with scheduling or supervisory responsibilities to dynamically adjust the agent lineup as needed.

NOTE: Attempting to add an agent who is already a participant in the given appointment will result in a 'StatusConflict' error, indicating that the agent's participation has already been established.

Required authorization: ROLE_AGENT or ROLE_SUPERVISOR

Request body

{
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"userId": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyAddParticipantAgentRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBadRequest. The request was malformed, missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment or agent could not be found.None
409ConflictStatusConflict. The specified agent is already a participant of the appointment.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/appointments/participants/agents/ \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Add a Customer as a Participant to an Existing Appointment

POST /api/appointments/participants/customers/ HTTP/1.1
Content-Type: application/json
Accept: application/json

Adds a participant of type CUSTOMER to an existing appointment. This action allows for the inclusion of customers in the appointment scheduling system, facilitating direct engagement and interaction within the scheduled activities.

This operation is designed to enable roles with customer interaction responsibilities, such as agents or supervisors, to include customers in appointments, ensuring that all relevant parties are integrated into the appointment's planning and execution.

Required authorization: ROLE_AGENT or ROLE_SUPERVISOR

Request body

{
"customer": {
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"username": "ewingb@myorg.com"
},
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyAddParticipantCustomerRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBadRequest. The request was malformed, missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment or customer could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/appointments/participants/customers/ \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Reassign an Existing Appointment to a New Agent

PUT /api/appointments/reassign/ HTTP/1.1
Content-Type: application/json
Accept: application/json

Reassigns an existing appointment to a new agent by updating the appointment's owner and associated AGENT participant. This action facilitates the transfer of responsibility for an appointment to another agent, ensuring continuity of service and management.

NOTE: This operation will replace the current owner (organizer) and any associated AGENT participants with the new AGENT specified in the request. If the appointment is reassigned to the same agent already assigned, no changes will be made.

Required authorization: ROLE_AGENT or ROLE_SUPERVISOR

Request body

{
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"userId": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyAddParticipantAgentRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBadRequest. The request was malformed, missing required fields, or the specified agent ID was invalid.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment or agent could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X PUT /api/appointments/reassign/ \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Reschedule an Existing Appointment

PUT /api/appointments/reschedule/ HTTP/1.1
Content-Type: application/json
Accept: application/json

Modifies the schedule of an existing appointment by adjusting its start time, duration, and time zone. This operation is designed to accommodate changes in availability or scheduling preferences.

NOTE:

  • If the appointment is already active, the scheduled times associated with the "RoomAccess" information will be updated to reflect the new schedule. However, the URL or link provided for video conference access will not change. This means that while the appointment time may be adjusted, the access link for participants remains the same, ensuring uninterrupted and seamless access according to the new timing.
  • If application-specific notifications are active and properly configured, relevant notifications will be dispatched to inform customers accordingly.

Required authorization: ROLE_AGENT, ROLE_SUPERVISOR, or ROLE_CLIENT_SERVICE

Request body

{
"duration": "\"PT5M\"",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"locale": "\"en-GB\"",
"start": "\"2022-01-31T19:00:00.0Z\"",
"timezone": "\"Europe/Berlin\""
}

Parameters

ParameterInTypeRequiredDescription
bodybodyRescheduleAppointmentRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneGetAppointmentResponse
400Bad RequestBadRequest. The request was malformed, missing required fields, or specified an invalid schedule.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. The specified appointment could not be found.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X PUT /api/appointments/reschedule/ \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Events

Get Google Calendar Event URL

GET /api/cal/events/google/{id}/event HTTP/1.1

Get the Google Calendar event URL for an appointment.

Required authorization: none

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId specifies the unique identifier of the appointment for Google Calendar event retrieval.

Responses

Overview
StatusMeaningDescriptionSchema
302FoundnoneNone
400Bad RequestBad request. The request was malformed or missing required fields.None
404Not FoundStatusNotFound. - No appointment found matching the specified id.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: None

Code samples

curl -X GET /api/cal/events/google/{id}/event

Get iCalendar Event

GET /api/cal/events/ical/{id}/event HTTP/1.1

Get appointment event calendar in iCalendar format.

Required authorization: none

Parameters

ParameterInTypeRequiredDescription
idpathstringtrueId specifies the unique identifier of the appointment for iCalendar event retrieval.

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneNone
400Bad RequestBad request. The request was malformed or missing required fields.None
404Not FoundStatusNotFound. - No appointment found matching the specified id.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: None

Code samples

curl -X GET /api/cal/events/ical/{id}/event

Notifications

Confirm Email Service Verification (Genesys Cloud Specific)

POST /api/notifications/emails/confirm HTTP/1.1
Content-Type: application/json

Completes the email service verification process by submitting the OTP (One Time Password) received in the verification email. This step confirms that the email service is correctly configured and capable of delivering email messages to the intended recipients.

NOTE: This confirmation step is crucial for verifying the operational status of the email service. The OTP code, sent to the provided email address during the verification process (initiateEmailServiceVerification), must be entered correctly to successfully confirm the service's functionality.

Required authorization: ROLE_ADMIN

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"code": "063780"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyServiceConfirmationRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
204No ContentNo Content - The email service verification has been successfully confirmed. No additional content is returned.None
400Bad RequestBadRequest - The request was malformed, missing required fields, or the provided OTP was incorrect.None
401UnauthorizedUnauthorized - Authorization information is missing or invalid.None
403ForbiddenForbidden - Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound - The provided OTP could not be found or has expired, indicating that the confirmation could not be processed.None
500Internal Server ErrorInternalServerError - An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/notifications/emails/confirm \
-H 'Content-Type: application/json' \ -H 'Authorization: API_KEY'

Test Email Notification Functionality

POST /api/notifications/emails/test HTTP/1.1
Content-Type: application/json

Sends a test email notification to a specified address, allowing administrators to verify the functionality of the email notification system. This test is crucial for ensuring that emails are properly sent and received, and it provides an opportunity to review the actual notification results and layout as they would appear to the recipient.

This endpoint is instrumental in testing various aspects of the email notification service, including delivery success, content accuracy, and layout formatting. It ensures that notifications adhere to the intended design specifications and communication standards.

Use Cases: Functionality Testing: Confirm that the email service is operational and capable of sending messages as expected. Content Verification: Check that the email content, including text and dynamic fields, is accurate and meets the intended purpose. Layout and Formatting: Review the email presentation and formatting to ensure it is clear and readable across different email clients and devices.

Required authorization: ROLE_ADMIN

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"channel": "EMAIL",
"htmlBody": "\"<html>...</html>\"",
"locale": "en-GB",
"period": "\"P1D\"",
"subject": "\"Video appointment reminder\"",
"textBody": "\"Dear {{firstName}},\\n\\nThis is a reminder of your video call scheduled for {{dd-MM-yyyy}} {{time24}} {{zone}}\"",
"timezone": "Europe/Berlin",
"toEmail": "email@yourdomain.com",
"type": "REMINDER"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyEmailNotificationRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
204No ContentNoContent - The test email has been successfully sent. No content is returned.None
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. - Indicates a potential configuration or routing issue, suggesting the email service may not be correctly configured.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/notifications/emails/test \
-H 'Content-Type: application/json' \ -H 'Authorization: API_KEY'

Initiate Email Service Verification (Genesys Cloud Specific)

POST /api/notifications/emails/verify HTTP/1.1
Content-Type: application/json
Accept: application/json

Initiates an email service verification process by sending an OTP (One Time Password) to the specified email address included in the request body. The received OTP must then be used to complete the verification process through the /notifications/emails/confirm endpoint. This step is part of the process to ensure that the email service is properly configured and capable of sending email messages to users.

NOTE: The verification process requires specifying a valid email address in the request. An email containing the OTP verification code will be sent to this address. The recipient must use this OTP to confirm the service's functionality via /notifications/emails/confirm, thereby completing the verification process.

Required authorization: ROLE_ADMIN

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"domain": "appointments.auvious.com",
"fromName": "\"auvious No-Reply\"",
"toEmail": "email@yourdomain.com"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyEmailServiceRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneEmailServiceOTPVerify
400Bad RequestBadRequest. The request was malformed, missing required fields, or contained an invalid email address.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. Indicates a configuration or routing error, suggesting the specified email address or email service may not be correctly set up.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"validFor": "PT1M0s indicates that the OTP is valid for 1 minute."
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/notifications/emails/verify \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Get Notification Locales (Internal Use)

GET /api/notifications/locales HTTP/1.1
Accept: application/json

Get the supported locales that are used when sending notifications. This endpoint is intended for internal use and requires the 'ROLE_ADMIN' authorization.

Required authorization: ROLE_ADMIN

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneNotificationLocales
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"content": [
{
"description": "English (United States)",
"locale": "en_US"
},
{
"description": "Greek (Greece)",
"locale": "el_GR"
}
]
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X GET /api/notifications/locales \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Confirm SMS Service Verification (Genesys Cloud Specific)

POST /api/notifications/sms/confirm HTTP/1.1
Content-Type: application/json

Completes the SMS service verification process by submitting the OTP (One Time Password) received in the verification SMS. This step confirms that the SMS service is correctly configured and capable of delivering SMS messages to the intended recipients.

NOTE: This confirmation step is crucial for verifying the operational status of the SMS service. The OTP code, sent to the provided phone number during the verification process (initiateSMSServiceVerification), must be entered correctly to successfully confirm the service's functionality.

Required authorization: ROLE_ADMIN

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"code": "063780"
}

Parameters

ParameterInTypeRequiredDescription
bodybodyServiceConfirmationRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
204No ContentNoContent. Successful confirmation of the SMS service. No additional content is returned.None
400Bad RequestBadRequest. The request was malformed, missing required fields, or the OTP was incorrect.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. Indicates the OTP or verification session could not be found, possibly due to an incorrect OTP or an expired verification session.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/notifications/sms/confirm \
-H 'Content-Type: application/json' \ -H 'Authorization: API_KEY'

Test SMS Notification Functionality

POST /api/notifications/sms/test HTTP/1.1
Content-Type: application/json

Sends a test SMS notification to a specified number, allowing administrators to verify the functionality of the SMS notification system. This test is useful not only for ensuring that messages are successfully sent and received but also for viewing the actual notification results and layout as they would appear to the end user.

This endpoint provides a means to test various aspects of the SMS notification service, including message delivery, content accuracy, and layout formatting, ensuring that notifications meet the intended design and communication standards.

Use Cases: Functionality Testing: Verify that the SMS service is operational and capable of sending messages. Content Verification: Ensure that the message content is correct, including text and any dynamic fields. Layout and Formatting: Check the presentation and formatting of the SMS message to ensure clarity and readability on various devices.

Required authorization: ROLE_ADMIN

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"channel": "SMS",
"locale": "en-GB",
"period": "P1D (1 day before)",
"textBody": "\"Dear {{firstName}},\\n\\nThis is a reminder of your video call scheduled for {{dd-MM-yyyy}} {{time24}} {{zone}}\"",
"timezone": "Europe/Berlin",
"toNumber": "+3069312211xx",
"type": "REMINDER"
}

Parameters

ParameterInTypeRequiredDescription
bodybodySMSNotificationRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
204No ContentNoContent - The test SMS has been successfully sent. No content is returned.None
400Bad RequestBad request. The request was malformed or missing required fields.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. - Indicates a configuration or routing error, suggesting the SMS service may not be correctly set up.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/notifications/sms/test \
-H 'Content-Type: application/json' \ -H 'Authorization: API_KEY'

Initiate SMS Service Verification (Genesys Cloud Specific)

POST /api/notifications/sms/verify HTTP/1.1
Content-Type: application/json
Accept: application/json

Initiates an SMS service verification process by sending an OTP (One Time Password) to the specified phone number included in the request body. The received OTP must then be used to complete the verification process through the /notifications/sms/confirm endpoint. This step is part of the process to ensure that the SMS service is properly configured and capable of sending SMS notifications to users.

NOTE: The verification process requires specifying a valid phone number in the request. An SMS containing the OTP verification code will be sent to this number. The recipient must use this OTP to confirm the service's functionality via /notifications/sms/confirm, thereby completing the verification process.

Required authorization: ROLE_ADMIN

Request body

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"fromNumber": "+3069132132xx",
"toNumber": "+3069312211xx"
}

Parameters

ParameterInTypeRequiredDescription
bodybodySMSServiceRequestfalsenone

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneSMSServiceOTPVerify
400Bad RequestBadRequest. The request was malformed, missing required fields, or contained an invalid phone number.None
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
404Not FoundStatusNotFound. Indicates a configuration or routing error, suggesting the specified phone number or SMS service may not be correctly set up.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"validFor": "PT1M0s indicates that the OTP is valid for 1 minute."
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X POST /api/notifications/sms/verify \
-H 'Content-Type: application/json' \ -H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Get Notification Parameter Tags (Internal Use)

GET /api/notifications/tags HTTP/1.1
Accept: application/json

Get the supported parameter tags that can be used in notifications. This endpoint is intended for internal use and requires the 'ROLE_ADMIN' authorization.

Required authorization: ROLE_ADMIN

Responses

Overview
StatusMeaningDescriptionSchema
200OKnoneNotificationParameterTags
401UnauthorizedUnauthorized. Authorization information is missing or invalid.None
403ForbiddenForbidden. Access to the requested resource or operation is forbidden.None
500Internal Server ErrorInternal Server Error. An unexpected error occurred, preventing the successful processing of the request.None
Examples

200 Response

{
"content": [
{
"example": "Monday 02-Jan-06",
"format": "EEEE dd-MMM-yy"
},
{
"example": "3:04 pm",
"format": "time12hr"
},
{
"example": "MST",
"format": "zone"
}
]
}
caution

To perform this operation, you must be authenticated by means of one of the following methods: jwtBearerToken

Code samples

curl -X GET /api/notifications/tags \
-H 'Accept: application/json' \ -H 'Authorization: API_KEY'

Schemas

AddParticipantAgentRequest

{
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"userId": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4"
}

Properties

NameTypeRequiredRestrictionsDescription
idstringtruenoneId is the unique identifier of the appointment.
userIdstringtruenoneAgentId is the unique identifier of the user (agent) to be added to the appointment.

AddParticipantCustomerRequest

{
"customer": {
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"username": "ewingb@myorg.com"
},
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c"
}

Properties

NameTypeRequiredRestrictionsDescription
customerCustomerDetailstruenonenone
idstringtruenoneId is the unique identifier of the appointment.

Appointment

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
durationstringfalsenoneDuration of the appointment, represented in ISO 8601 duration format.
endstring(date-time)falsenoneEndTime is the scheduled end date and time of the appointment in UTC.
idstringfalsenoneUnique identifier of the appointment
interactionInteractionDatafalsenonenone
localestringfalsenoneLocale used for customer notifications.
metadataobjectfalsenoneAny additional information that might be of use.
» additionalPropertiesanyfalsenonenone
notesstringfalsenoneAdditional notes
notificationHeadersobjectfalsenoneNotificationHeaders propagated to all applicable notifications i.e. webhook notifications
» additionalPropertiesstringfalsenonenone
notificationsActivebooleanfalsenoneNotificationsActive indicates whether notifications for this appointment are active.
organizerparticipantfalsenonenone
participantIds[participant]falsenoneParticipantIdentifiers lists all participants of this appointment.
startstring(date-time)falsenoneStartTime is the scheduled start date and time of the appointment in UTC.
timezonestringfalsenoneTimeZone specifies the local time zone of the appointment.
titlestringfalsenoneAppointment title

AppointmentActivationResponse

{
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
}

Properties

NameTypeRequiredRestrictionsDescription
expiresstring(date-time)falsenoneExpireTime is the UTC expiration date and time for the appointment room access. It becomes relevant only if the appointment has not yet expired. The format is in ISO 8601 (YYYY-MM-DDTHH:MM:SSZ).
typestringfalsenoneType specifies the permission level associated with this appointment room, determining access control.
urlstringfalsenoneURL provides the unique web address for accessing the video appointment, offering a direct link to the meeting room.

AppointmentCountResponse

{
"count": 2,
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin"
}

Properties

NameTypeRequiredRestrictionsDescription
countinteger(int64)falsenoneCount represents the number of appointments scheduled within the specified duration.
durationstringfalsenoneDuration of the appointment, represented in ISO 8601 duration format.
endstring(date-time)falsenoneEndTime is the scheduled end date and time of the appointment in UTC.
startstring(date-time)falsenoneStartTime is the scheduled start date and time of the appointment in UTC.
timezonestringfalsenoneTimeZone specifies the local time zone of the appointment.

AppointmentOverlapResponse

{
"count": 0
}

Properties

NameTypeRequiredRestrictionsDescription
countinteger(int64)falsenonenone

AppointmentRoomDetails

{
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
}

Properties

NameTypeRequiredRestrictionsDescription
expiresstring(date-time)falsenoneExpireTime is the UTC expiration date and time for the appointment room access. It becomes relevant only if the appointment has not yet expired. The format is in ISO 8601 (YYYY-MM-DDTHH:MM:SSZ).
typestringfalsenoneType specifies the permission level associated with this appointment room, determining access control.
urlstringfalsenoneURL provides the unique web address for accessing the video appointment, offering a direct link to the meeting room.

Contact

{
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
}

Properties

NameTypeRequiredRestrictionsDescription
primaryEmailstringfalsenonePrimaryEmail is the primary contact email address of the user.
primaryPhonestringfalsenonePrimaryPhone is the primary contact telephone number of the user.

CustomerDetails

{
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"username": "ewingb@myorg.com"
}

Properties

NameTypeRequiredRestrictionsDescription
contactContactfalsenonenone
metadataobjectfalsenoneAncillaryData holds unstructured additional information that might be useful.
» additionalPropertiesanyfalsenonenone
nameNamefalsenonenone
usernamestringfalsenoneUsername of the user.

EmailNotificationRequest

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"channel": "EMAIL",
"htmlBody": "\"<html>...</html>\"",
"locale": "en-GB",
"period": "\"P1D\"",
"subject": "\"Video appointment reminder\"",
"textBody": "\"Dear {{firstName}},\\n\\nThis is a reminder of your video call scheduled for {{dd-MM-yyyy}} {{time24}} {{zone}}\"",
"timezone": "Europe/Berlin",
"toEmail": "email@yourdomain.com",
"type": "REMINDER"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
channelstringtruenoneChannel for the notification.
Possible values: SMS, EMAIL, WEBHOOKS. Required.
htmlBodystringfalsenoneHtmlBody of the email notification.
localestringfalsenoneLocale for the email's language and format. Defaults to en-US if not specified.
periodstring(duration)falsenonePeriod before the appointment start time when the notification should be sent. Only required for REMINDER & ROOM types.
subjectstringfalsenoneSubject of the email notification.
textBodystringfalsenoneTextBody of the SMS notification in plain text format.
timezonestringfalsenoneTimeZone of the appointment. Defaults to UTC if not specified.
toEmailstringtruenoneToEmail is the recipient's email address.
typestringtruenoneType of notification.
Possible values: CREATE, UPDATE, REMINDER, ROOM. Required.
Enumerated Values
PropertyValue
channelSMS
channelEMAIL
channelWEBHOOKS
typeCREATE
typeUPDATE
typeREMINDER
typeROOM

EmailServiceOTPVerify

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"validFor": "PT1M0s indicates that the OTP is valid for 1 minute."
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
validForstringfalsenoneValidFor specifies the duration that the OTP (One-Time Password) verification remains active.
It is represented in ISO 8601 duration format.

EmailServiceRequest

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"domain": "appointments.auvious.com",
"fromName": "\"auvious No-Reply\"",
"toEmail": "email@yourdomain.com"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
domainstringtruenoneName of the outbound domain used for sending emails.
It must be a fully qualified domain name (FQDN).
fromNamestringfalsenoneFromName is the display name indicating the sender of the email.
toEmailstringtruenoneToEmail is the email address to which the verification email will be sent.
It must be a valid email format.

FindAppointmentsEligibleResponse

{
"eligibleFrom": "2022-01-31T19:00:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin"
}

Properties

NameTypeRequiredRestrictionsDescription
eligibleFromstring(date-time)falsenoneEligibleFrom is the UTC date and time from which the appointment is eligible for activation.
idstringfalsenoneUnique identifier of the appointment
startstring(date-time)falsenoneStartTime is the scheduled start date and time in UTC for the appointment.
timezonestringfalsenoneTimeZone specifies the local time zone for the appointment.

FindAppointmentsResponsePaged

{
"content": [
{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}
],
"pageCount": 0,
"pageNumber": 1,
"pageSize": 25,
"sortField": "string",
"sortOrder": "asc",
"total": 0
}

Properties

NameTypeRequiredRestrictionsDescription
content[Appointment]falsenonenone
pageCountinteger(int64)falsenonenumber of pages for the provided page size
pageNumberinteger(int64)falsenonePage number
pageSizeinteger(int64)falsenonePage size
sortFieldstringfalsenoneField to use for sort
sortOrderstringfalsenoneasc or desc
totalinteger(int64)falsenonetotal number of entities in the result set
Enumerated Values
PropertyValue
sortOrderasc
sortOrderdesc

GetAppointmentResponse

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"duration": "PT5M0s (5 minutes)",
"end": "2022-01-31T19:05:00.0Z",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
},
"locale": "en_US",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": "{\"x-channel\": widget\"}",
"notificationsActive": true,
"organizer": {
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
},
"participantIds": [
{
"id": "2460b086-8d27-4cd3-a7ef-cdc8b4c17f0c",
"type": "CUSTOMER"
},
{
"id": "36c1r718-9ab5-48c9-aeab-fas5f37b0ec4",
"type": "AGENT"
}
],
"roomAccess": {
"expires": "2022-01-31T19:00:00.0Z",
"type": "MULTI_USE_TICKET",
"url": "https://video.auvious.com/q/pij-gws"
},
"start": "2022-01-31T19:00:00.0Z",
"timezone": "Europe/Berlin",
"title": "Product installation review"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
durationstringfalsenoneDuration of the appointment, represented in ISO 8601 duration format.
endstring(date-time)falsenoneEndTime is the scheduled end date and time of the appointment in UTC.
idstringfalsenoneUnique identifier of the appointment
interactionInteractionDatafalsenonenone
localestringfalsenoneLocale used for customer notifications.
metadataobjectfalsenoneAny additional information that might be of use.
» additionalPropertiesanyfalsenonenone
notesstringfalsenoneAdditional notes
notificationHeadersobjectfalsenoneNotificationHeaders propagated to all applicable notifications i.e. webhook notifications
» additionalPropertiesstringfalsenonenone
notificationsActivebooleanfalsenoneNotificationsActive indicates whether notifications for this appointment are active.
organizerparticipantfalsenonenone
participantIds[participant]falsenoneParticipantIdentifiers lists all participants of this appointment.
roomAccessAppointmentRoomDetailsfalsenonenone
startstring(date-time)falsenoneStartTime is the scheduled start date and time of the appointment in UTC.
timezonestringfalsenoneTimeZone specifies the local time zone of the appointment.
titlestringfalsenoneAppointment title

GetParticipantDetailsResponse

{
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"type": "CUSTOMER",
"username": "ewingb@myorg.com"
}

Properties

NameTypeRequiredRestrictionsDescription
contactContactfalsenonenone
idstringfalsenoneId is the unique identifier of the participant.
metadataobjectfalsenoneAncillaryData holds unstructured additional information that might be useful.
» additionalPropertiesanyfalsenonenone
nameNamefalsenonenone
typestringfalsenoneType specifies the participant type, which can be either AGENT or CUSTOMER.
usernamestringfalsenoneUsername of the user.

InteractionData

{
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
},
"state": "PENDING"
}

Properties

NameTypeRequiredRestrictionsDescription
customFieldsobjectfalsenoneKey value pair custom fields relevant to this interaction
» additionalPropertiesstringfalsenonenone
routingRoutingDatafalsenonenone
statestringfalsenoneCurrent state of this interaction
Enumerated Values
PropertyValue
statePENDING
stateCOMPLETE

InteractionDataRequest

{
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": "{\"deploymentId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"} or {\"touchpointId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"}",
"type": "GENESYS_CLOUD_FLOW or TALKDESK_DIGITAL_CONNECT"
}
}

Properties

NameTypeRequiredRestrictionsDescription
customFieldsobjectfalsenoneCustomFields to be propagated to the customer interaction.
» additionalPropertiesstringfalsenonenone
routingRoutingDataRequesttruenonenone

Name

{
"firstName": "Bobby",
"lastName": "Ewing"
}

Properties

NameTypeRequiredRestrictionsDescription
firstNamestringfalsenoneFirstName is the first name of the user.
lastNamestringfalsenoneLastName is the last name of the user.

NotificationLocale

{
"description": "English (United States)",
"locale": "en_US"
}

Properties

NameTypeRequiredRestrictionsDescription
descriptionstringfalsenoneDescription provides details about the locale, including language and country.
localestringfalsenoneLocale identifies a supported locale, using ICU locale identifiers. For more details, refer to http://userguide.icu-project.org/locale.

NotificationLocales

{
"content": [
{
"description": "English (United States)",
"locale": "en_US"
},
{
"description": "Greek (Greece)",
"locale": "el_GR"
}
]
}

Properties

NameTypeRequiredRestrictionsDescription
content[NotificationLocale]falsenoneLocales lists the supported notification locales, detailing both locale keys and their descriptions.

NotificationParameterTag

{
"example": "Monday 02-Jan-06",
"format": "EEEE dd-MMM-yy"
}

Properties

NameTypeRequiredRestrictionsDescription
examplestringfalsenoneExample provides a sample of how the notification parameter appears when the specified format is applied.
formatstringfalsenoneFormat specifies the format value for a supported notification parameter, primarily used for date formatting.

NotificationParameterTags

{
"content": [
{
"example": "Monday 02-Jan-06",
"format": "EEEE dd-MMM-yy"
},
{
"example": "3:04 pm",
"format": "time12hr"
},
{
"example": "MST",
"format": "zone"
}
]
}

Properties

NameTypeRequiredRestrictionsDescription
content[NotificationParameterTag]falsenoneFormats lists the supported notification parameter tags, providing both the parameter format keys and example values.

RescheduleAppointmentRequest

{
"duration": "\"PT5M\"",
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"locale": "\"en-GB\"",
"start": "\"2022-01-31T19:00:00.0Z\"",
"timezone": "\"Europe/Berlin\""
}

Properties

NameTypeRequiredRestrictionsDescription
durationstring(duration)truenoneDuration of the appointment in ISO 8601 format.
idstringtruenoneId is the unique identifier of the appointment.
localestringfalsenoneLocale used for the appointment and notifications. Defaults to "en-US".
startstring(date-time)truenoneStartTime is the UTC start date and time for the appointment.
timezonestringtruenoneTimeZone for the appointment.

RoutingData

{
"properties": {
"deploymentId": "c461a74-af3a-4b55-a461-bafbf077a34e"
},
"type": "GENESYS_CLOUD_FLOW"
}

Properties

NameTypeRequiredRestrictionsDescription
propertiesobjectfalsenoneRouting properties relevant to the routing type
» additionalPropertiesstringfalsenonenone
typestringfalsenoneRouting type associated with the given customer interaction
Enumerated Values
PropertyValue
typeGENESYS_CLOUD_FLOW
typeGENESYS_CLOUD_QUEUE

RoutingDataRequest

{
"properties": "{\"deploymentId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"} or {\"touchpointId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"}",
"type": "GENESYS_CLOUD_FLOW or TALKDESK_DIGITAL_CONNECT"
}

Properties

NameTypeRequiredRestrictionsDescription
propertiesobjectfalsenoneProperties are specific routing properties relevant to the RouteType.
» additionalPropertiesstringfalsenonenone
typestringfalsenoneRouteType is the routing type for the customer interaction.
Possible values: GENESYS_CLOUD_FLOW, GENESYS_CLOUD_QUEUE, TALKDESK_DIGITAL_CONNECT. Defaults to GENESYS_CLOUD_FLOW if genesys application or TALKDESK_DIGITAL_CONNECT if application is talkdesk.

SMSNotificationRequest

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"channel": "SMS",
"locale": "en-GB",
"period": "P1D (1 day before)",
"textBody": "\"Dear {{firstName}},\\n\\nThis is a reminder of your video call scheduled for {{dd-MM-yyyy}} {{time24}} {{zone}}\"",
"timezone": "Europe/Berlin",
"toNumber": "+3069312211xx",
"type": "REMINDER"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
channelstringtruenoneChannel specifies the notification delivery method.
localestringfalsenoneLocale for the notification's language and format. Defaults to en-US if not specified.
periodstring(duration)falsenonePeriod before the appointment start time for sending the notification. Required for REMINDER & ROOM types.
textBodystringtruenoneTextBody is the notification message in plain text.
timezonestringfalsenoneTimeZone of the appointment. Defaults to UTC if not specified.
toNumberstringtruenoneToNumber is the recipient's phone number for the SMS message.
It must follow the E.164 numbering format.
typestringtruenoneType of notification being sent.
Allowed values: CREATE, UPDATE, REMINDER, ROOM.
Enumerated Values
PropertyValue
channelSMS
channelEMAIL
channelWEBHOOKS

SMSServiceOTPVerify

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"validFor": "PT1M0s indicates that the OTP is valid for 1 minute."
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
validForstringfalsenoneValidFor specifies the duration that the OTP (One-Time Password) verification remains active.
It is represented in ISO 8601 duration format.

SMSServiceRequest

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"fromNumber": "+3069132132xx",
"toNumber": "+3069312211xx"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
fromNumberstringtruenoneFromNumber is the SMS number from which the message will be sent.
It must follow the E.164 numbering format.
toNumberstringtruenoneToNumber is the recipient's phone number for the SMS message.
It must also follow the E.164 numbering format.

ScheduleAppointmentRequest

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"customer": {
"contact": {
"primaryEmail": "user@provider.net",
"primaryPhone": "2102234988"
},
"metadata": {
"refNo": "CS-9838"
},
"name": {
"firstName": "Bobby",
"lastName": "Ewing"
},
"username": "ewingb@myorg.com"
},
"duration": "\"PT5M\"",
"interaction": {
"customFields": {
"property1": "string",
"property2": "string"
},
"routing": {
"properties": "{\"deploymentId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"} or {\"touchpointId\": \"c461a74-af3a-4b55-a461-bafbf077a34e\"}",
"type": "GENESYS_CLOUD_FLOW or TALKDESK_DIGITAL_CONNECT"
}
},
"locale": "\"en-GB\"",
"metadata": {
"prop1": "value1"
},
"notes": "\"CRM ref: 3nv-1gt-4rt\"",
"notificationHeaders": "{\"x-channel\": widget\"}",
"start": "\"2022-01-31T19:00:00.0Z\"",
"timezone": "\"Europe/Berlin\"",
"title": "\"Product installation review\""
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
customerCustomerDetailsfalsenonenone
durationstring(duration)truenoneDuration of the appointment in ISO 8601 format.
interactionInteractionDataRequestfalsenonenone
localestringfalsenoneLocale used for the appointment and notifications. Defaults to "en-US".
metadataobjectfalsenoneAncillaryData contains any additional information useful for the appointment.
» additionalPropertiesanyfalsenonenone
notesstringfalsenoneNotes regarding the appointment.
notificationHeadersobjectfalsenoneHeaders propagated to all applicable notifications i.e. webhook notifications
» additionalPropertiesstringfalsenonenone
startstring(date-time)truenoneStartTime is the UTC start date and time for the appointment.
timezonestringtruenoneTimeZone for the appointment.
titlestringfalsenoneTitle of the appointment.

ServiceConfirmationRequest

{
"applicationId": "bf8215e5-a39e-490a-a0e2-07df6a3d8c1f",
"code": "063780"
}

Properties

NameTypeRequiredRestrictionsDescription
applicationIdstringtruenoneUnique application identifier
codestringtruenoneCode is the OTP sent to the user's SMS number for verification.
It must be numeric.

UpdateAppointmentRequest

{
"id": "f46f165d-383a-4432-9a3e-9c805a152e0c",
"metadata": {
"prop1": {}
},
"notes": "CRM ref: 3nv-1gt-4rt",
"notificationHeaders": {
"property1": "string",
"property2": "string"
},
"title": "Product installation review"
}

Properties

NameTypeRequiredRestrictionsDescription
idstringtruenoneId is the unique identifier of the appointment.
metadataobjectfalsenoneAny additional information that might be of use.
» additionalPropertiesanyfalsenonenone
notesstringfalsenoneAdditional notes
notificationHeadersobjectfalsenonenone
» additionalPropertiesstringfalsenonenone
titlestringfalsenoneAppointment title

participant

{
"id": "c59a1ee2-e71d-4370-9ac8-26de220104db",
"state": "active",
"type": "CUSTOMER"
}

Properties

NameTypeRequiredRestrictionsDescription
idstringfalsenoneId is the unique identifier of the participant.
statestringfalsenoneState indicates the current state of the participant.
typestringfalsenoneType specifies the participant type, which can be either AGENT or CUSTOMER.