Visitor Single Sign-On (SSO)
- 29 Nov 2022
- 3 Minutes to read
- Print
- DarkLight
Visitor Single Sign-On (SSO)
- Updated on 29 Nov 2022
- 3 Minutes to read
- Print
- DarkLight
Article summary
Did you find this summary helpful?
Thank you for your feedback
Visitor Single Sign-On (SSO)
You need the Manage Settings permission to manage visitor sso config.
Visitor Single Sign-On (SSO)
- Visitor Single Sign-On (SSO) ManageGET livechat/visitorSsoConfig
- Get a single Visitor Single Sign OnPOST livechat/visitorSsoConfig:disable
- Disable the Visitor Single Sign OnPOST livechat/visitorSsoConfig:enable
- Enable the Visitor Single Sign OnPUT livechat/visitorSsoConfig
- Update the Visitor Single Sign On
Visitor Single Sign On JSON Format
Visitor Single Sign-On (SSO) is represented as simple flat JSON objects with the following keys:
Name | Type | Description |
---|---|---|
isEnabled | bool | Whether visitor single sign-on (SSO) is enabled or not. |
protocolType | string | "samlSso", "jwtSso" |
signInUrl | string | Url for SAML sign-in. |
logoutUrl | string | Url for SAML log-out. |
artifactResolutionServiceUrl | string | Url for artifact resolution service. |
samlCertificate | string | SAML certificate, mandatory when type is SAML. |
jwtLoginUrl | string | Url for JWT sign-in. |
jwtCertificate | string | JWT certificate, mandatory when type is JWT. |
visitorSsoFieldMappings | visitorSsoFieldMappings[] | Reference to Visitor SSO Field Mapping. |
visitorSsos | visitorSsos[] | Reference to Campaign Visitor SSO. |
Visitor SSO Field Mapping JSON Format:
Name | Type | Description |
---|---|---|
id | guid | Id of the visitor sso field mapping. |
idpAttribute | string | SSO attribute name from Idp. |
comm100Field | string | The Comm100 field name. |
Campaign Visitor SSO JSON Format:
Name | Type | Description |
---|---|---|
campaignId | guid | Id of the campaign. |
signInOption | string | Allowed values are "noSignIn", "signInOptional", "signInRequired". |
isPreChatFormSkipped | bool | Whether pre-chat form is skipped or not. |
ifOpenLoginPageInEmbeddedChatWindow | bool | Whether to open the login page in embedded chat window or not. |
campaign | campaign | Reference to Campaign. |
Get a single Visitor Single Sign On
GET livechat/visitorSsoConfig
Parameters:
Name | Type | in | Required | Description |
---|---|---|---|---|
include | string | query | no | Allowed values are "visitorSsoFieldMapping", "campaignVisitorSso". |
Response:
Example
Sample Request:
curl https://api11.comm100.io/v4/livechat/visitorSsoConfig \
-X 'GET' \
-H 'Authorization: Bearer {access_token}' \
Response:
HTTP/1.1 200 OK
{
"isEnabled": true,
"protocolType": "samlSso",
"signInUrl": "https://autoportal.comm100.io/SSOIDP",
"logoutUrl": "",
"artifactResolutionServiceUrl": "",
"samlCertificate": "",
"jwtLoginUrl": "",
"jwtCertificate": "",
"visitorSsoFieldMappings": [
{
"id": "FFE0FD0E-81A5-4998-81FD-E01DAA2D4ABD",
"idpAttribute": "phone",
"comm100Field": "{!Pre-Chat.Phone}"
}
],
"visitorSsos": [
{
"campaignId": "22f0b296-69e9-4b81-abe4-4bb9ed5ec9ef",
"signInOption": "noSignIn",
"isPreChatFormSkipped": true,
"ifOpenLoginPageInEmbeddedChatWindow": true,
"campaign": {
"name": "Temporary Campaign",
"id": "E7B4BD07-C09D-4252-856E-49CA22537B94",
"description": "This is a campaign for testing",
"language": "english"
}
}
]
}
Disable the Visitor Single Sign On
POST livechat/visitorSsoConfig:disable
Parameters:
No Parameters
Response:
Example
Sample Request:
curl https://api11.comm100.io/v4/livechat/visitorSsoConfig:disable \
-X 'POST' \
-H 'Authorization: Bearer {access_token}' \
Response:
HTTP/1.1 200 OK
{
"isEnabled": false,
"protocolType": "samlSso",
"signInUrl": "https://autoportal.comm100.io/SSOIDP",
"logoutUrl": "",
"artifactResolutionServiceUrl": "",
"samlCertificate": "",
"jwtLoginUrl": "",
"jwtCertificate": "",
"visitorSsoFieldMappings": [
{
"id": "FFE0FD0E-81A5-4998-81FD-E01DAA2D4ABD",
"idpAttribute": "phone",
"comm100Field": "{!Pre-Chat.Phone}"
}
],
"visitorSsos": [
{
"campaignId": "22f0b296-69e9-4b81-abe4-4bb9ed5ec9ef",
"signInOption": "noSignIn",
"isPreChatFormSkipped": true,
"ifOpenLoginPageInEmbeddedChatWindow": true,
"campaign": {
"name": "Temporary Campaign",
"id": "E7B4BD07-C09D-4252-856E-49CA22537B94",
"description": "This is a campaign for testing",
"language": "english"
}
}
]
}
Enable the Visitor Single Sign On
POST livechat/visitorSsoConfig:enable
Parameters:
No Parameters
Response:
Example
Sample Request:
curl https://api11.comm100.io/v4/livechat/visitorSsoConfig:enable \
-X 'POST' \
-H 'Authorization: Bearer {access_token}' \
Response:
HTTP/1.1 200 OK
{
"isEnabled": true,
"protocolType": "samlSso",
"signInUrl": "https://autoportal.comm100.io/SSOIDP",
"logoutUrl": "",
"artifactResolutionServiceUrl": "",
"samlCertificate": "",
"jwtLoginUrl": "",
"jwtCertificate": "",
"visitorSsoFieldMappings": [
{
"id": "FFE0FD0E-81A5-4998-81FD-E01DAA2D4ABD",
"idpAttribute": "phone",
"comm100Field": "{!Pre-Chat.Phone}"
}
],
"visitorSsos": [
{
"campaignId": "22f0b296-69e9-4b81-abe4-4bb9ed5ec9ef",
"signInOption": "noSignIn",
"isPreChatFormSkipped": true,
"ifOpenLoginPageInEmbeddedChatWindow": true,
"campaign": {
"name": "Temporary Campaign",
"id": "E7B4BD07-C09D-4252-856E-49CA22537B94",
"description": "This is a campaign for testing",
"language": "english"
}
}
]
}
Update the Visitor Single Sign On
PUT livechat/visitorSsoConfig
Parameters:
Name | Type | in | Required | Description |
---|---|---|---|---|
isEnabled | bool | body | no | Whether visitor single sign-on (SSO) is enabled or not. |
protocolType | string | body | yes | "samlSso", "jwtSso" |
signInUrl | string | body | yes | Url for sign-in. |
logoutUrl | string | body | no | Url for log-out. |
artifactResolutionServiceUrl | string | body | no | Url for artifact resolution service. |
samlCertificate | string | body | no | SAML certificate, mandatory when type is SAML. |
jwtLoginUrl | string | body | no | Url for JWT sign-in. |
jwtCertificate | string | body | yes | JWT certificate, mandatory when type is JWT. |
visitorSsoFieldMappings | visitorSsoFieldMappings[] | body | no | All the existing mapping should be included with this endpoint, otherwise the excluded ones will be deleted. |
visitorSsos | visitorSsos[] | body | no | Reference to Campaign Visitor SSO. |
Response:
Example
Sample Request:
curl https://api11.comm100.io/v4/livechat/visitorSsoConfig \
-X 'PUT' \
-H 'Authorization: Bearer {access_token}' \
-H 'Content-Type: application/json' \
-D '{"isEnabled":true,"signInUrl":"https://autoportal.comm100.io/SSOIDP","logoutUrl":"","artifactResolutionServiceUrl":"","samlCertificate":"","visitorSsoFieldMappings":[{"idpAttribute":"phone","comm100Field":"{!Pre-Chat.Phone}"}],"visitorSsos":[{"campaignId":"22f0b296-69e9-4b81-abe4-4bb9ed5ec9ef","signInOption":"noSignIn","isPreChatFormSkipped":true,"ifOpenLoginPageInEmbeddedChatWindow":true}]}'
Response:
HTTP/1.1 200 OK
{
"isEnabled": true,
"protocolType": "samlSso",
"signInUrl": "https://autoportal.comm100.io/SSOIDP",
"logoutUrl": "",
"artifactResolutionServiceUrl": "",
"samlCertificate": "",
"jwtLoginUrl": "",
"jwtCertificate": "",
"visitorSsoFieldMappings": [
{
"id": "FFE0FD0E-81A5-4998-81FD-E01DAA2D4ABD",
"idpAttribute": "phone",
"comm100Field": "{!Pre-Chat.Phone}"
}
],
"visitorSsos": [
{
"campaignId": "22f0b296-69e9-4b81-abe4-4bb9ed5ec9ef",
"signInOption": "noSignIn",
"isPreChatFormSkipped": true,
"ifOpenLoginPageInEmbeddedChatWindow": true,
"campaign": {
"name": "Temporary Campaign",
"id": "E7B4BD07-C09D-4252-856E-49CA22537B94",
"description": "This is a campaign for testing",
"language": "english"
}
}
]
}
Was this article helpful?