Skip to main content

Chat & Collaboration Endpoints (cont.)

Chat & Collaboration (continued)

MicrosoftTeams

GET /MicrosoftTeams/Get

Returns Microsoft Teams integration configuration. No query parameters.


MicrosoftTeamsMapping

GET /MicrosoftTeamsMapping

Returns all Microsoft Teams channel mappings. No query parameters.


POST /MicrosoftTeamsMapping

Creates one or more Teams channel mappings.

Request Body: Array of MicrosoftTeamsMapping

MicrosoftTeamsMapping schema:

PropertyTypeDescription
idintegerRecord ID
team_idstringMicrosoft Teams team ID
team_namestringMicrosoft Teams team name
subscription_idstringGraph API subscription ID
subscription_expirydatetimeWhen the subscription expires
subscribedbooleanWhether currently subscribed
new_subscription_keystringNew subscription key (write-only)

GET /MicrosoftTeamsMapping/{id}

Returns a single Teams mapping by ID.

ParameterTypeDescription
id (path)integerMapping ID (required)

DELETE /MicrosoftTeamsMapping/{id}

Deletes a Teams channel mapping.

ParameterTypeDescription
id (path)integerMapping ID (required)

TeamsChatMessage

GET /ExternalChatMessage

Returns all external (Teams) chat messages. No query parameters.


POST /ExternalChatMessage

Creates one or more Teams chat message records.

Request Body: Array of TeamsChatMessage_List

TeamsChatMessage_List schema:

PropertyTypeDescription
idintegerRecord ID
chat_idstringTeams chat thread ID
message_idstringTeams message ID
external_link_idintegerHaloPSA external link record ID
note_htmlstringMessage content (HTML)
notestringMessage content (plain text)
who_azure_idstringAzure AD ID of sender
whostringDisplay name of sender
datetimedatetimeMessage timestamp
whoagent_idintegerHaloPSA agent ID of sender
whoagent_namestringAgent name
remote_session_idintegerAssociated remote session ID

GET /ExternalChatMessage/{id}

Returns a single Teams chat message by ID.

ParameterTypeDescription
id (path)integerMessage ID (required)

DELETE /ExternalChatMessage/{id}

Deletes a Teams chat message record.

ParameterTypeDescription
id (path)integerMessage ID (required)

MattermostChannelDetails

GET /MattermostChannelDetails

Returns Mattermost channel configuration. No query parameters.


MattermostDetails

GET /MattermostDetails

Returns Mattermost integration configuration. No query parameters.


POST /MattermostDetails

Creates or updates Mattermost integration details.

Request Body: Array of MattermostDetails

MattermostDetails schema:

PropertyTypeDescription
idintegerRecord ID
namestringIntegration name
urlstringMattermost server URL
new_integration_methodbooleanUse new integration method
new_access_tokenstringAccess token (write-only)
authorizedbooleanWhether integration is authorized
channelsarrayAssociated channel configurations
enableintegratorbooleanEnable the integrator service
integratorhoursintegerIntegrator polling interval in hours

GET /MattermostDetails/{id}

Returns a single Mattermost integration record by ID.

ParameterTypeDescription
id (path)integerRecord ID (required)

DELETE /MattermostDetails/{id}

Deletes a Mattermost integration record.

ParameterTypeDescription
id (path)integerRecord ID (required)

Twilio

POST /Twilio/callback

Receives Twilio callback events (e.g., call status updates).

ParameterTypeDescription
guid (query)uuidIdentifies the Twilio configuration

Request Body: multipart/form-data with array of key-value pairs (StringStringValuesKeyValuePair).


POST /Twilio/twiml

Returns TwiML instructions for an incoming Twilio call.

ParameterTypeDescription
guid (query)uuidIdentifies the Twilio configuration

Request Body: multipart/form-data with array of key-value pairs.


TwilioDetails

GET /TwilioDetails

Returns Twilio integration configuration. No query parameters.


TwilioWhatsAppDetails

GET /TwilioWhatsAppDetails

Returns all Twilio WhatsApp integration configurations. No query parameters.


POST /TwilioWhatsAppDetails

Creates or updates Twilio WhatsApp integration details.

Request Body: Array of TwilioWhatsAppDetails

TwilioWhatsAppDetails schema:

PropertyTypeDescription
idintegerRecord ID
namestringIntegration name
twilio_sidstringTwilio account SID
phone_numberstringWhatsApp phone number
sender_configuredbooleanWhether sender is configured
site_idintegerAssociated site ID
ticket_typeintegerDefault ticket type
reopen_existing_ticketsbooleanReopen existing tickets on new message
allow_inboundbooleanAllow inbound messages
integrator_backupbooleanUse integrator as backup sync
integrator_lastsyncdatetimeLast sync timestamp
integrator_lasterrorstringLast sync error message
new_auth_tokenstringAuth token (write-only)
display_namestringDisplay name for sender
allow_content_templatesbooleanAllow WhatsApp content templates
allow_inline_voice_notesbooleanAllow inline voice notes
restrict_team_usagebooleanRestrict to specific teams
allowed_teamsarrayTeams allowed to use this configuration
templatesarrayWhatsApp content templates

GET /TwilioWhatsAppDetails/{id}

Returns a single Twilio WhatsApp configuration by ID.

ParameterTypeDescription
id (path)integerRecord ID (required)

DELETE /TwilioWhatsAppDetails/{id}

Deletes a Twilio WhatsApp configuration.

ParameterTypeDescription
id (path)integerRecord ID (required)

WhatsApp

GET /WhatsApp/Get/Data

Returns WhatsApp integration data. No query parameters.


GET /WhatsApp/Get/ProcessedIds

Returns IDs of processed WhatsApp messages. No query parameters.


Zoom

POST /Zoom/Message

Sends a message via the Zoom Chat integration.

Request Body: ZoomCreateMessageRequest

PropertyTypeDescription
tostringRecipient's Zoom user ID or email
messagestringMessage text to send

CallLog

GET /CallLog

Summary: List of CallLog

Returns call log records. Requires authentication.

ParameterTypeDescription
showallbooleanInclude all calls (not just current user's)

POST /CallLog

Creates one or more call log records.

Request Body: Array of CallLog

CallLog schema (key fields):

PropertyTypeDescription
idintegerRecord ID
start_datedatetimeCall start time
end_datedatetimeCall end time
timetakennumberCall duration
agent_idintegerHandling agent ID
client_idintegerAssociated client ID
site_idintegerAssociated site ID
user_idintegerEnd user ID
calleridstringCaller's phone number
diallednumberstringDialled number
caller_namestringCaller's name
caller_emailstringCaller's email
outcome_idintegerCall outcome/disposition ID
ticket_idintegerLinked ticket ID
action_numberintegerLinked action number
summarystringCall summary
notestringCall notes
call_statusintegerCall status code
call_directionintegerInbound (0) or outbound (1)
call_typestringCall type identifier
call_transcriptstringTranscription text
transferred_agentidintegerAgent call was transferred to
transferred_teamidintegerTeam call was transferred to
call_categorystringCall category
category1–4stringCustom category fields
caller_other1–5stringCustom caller data fields
third_party_idstringExternal system reference ID
displaynamestringDisplay name override
existingticketidstringPre-existing ticket to link

GET /CallLog/{id}

Summary: Get one CallLog

Returns a single call log record by ID. Requires authentication.

ParameterTypeDescription
id (path)integerCall log ID (required)
includedetailsbooleanInclude full detail data

TranscriptionStore

GET /TranscriptionStore

Returns all transcription store records. No query parameters.


POST /TranscriptionStore

Creates one or more transcription store records.

Request Body: Array of TranscriptionStore

TranscriptionStore schema:

PropertyTypeDescription
idintegerRecord ID
date_starteddatetimeTranscription job start time
date_finisheddatetimeTranscription job finish time
job_idstringExternal transcription job ID
attachment_idintegerID of the audio attachment transcribed
transcriptionstringFull transcription text

GET /TranscriptionStore/{id}

Returns a single transcription store record by ID.

ParameterTypeDescription
id (path)integerRecord ID (required)

DELETE /TranscriptionStore/{id}

Deletes a transcription store record.

ParameterTypeDescription
id (path)integerRecord ID (required)