Backend - Web API Functions¶
This section describes the EnQualify Web API methods that can be called by Integration Services.
⚠️ Web API methods other than those listed in this section should not be called by Integration Services.
Auth/Token — Obtaining Access Token¶
EnQualify API calls require an authorization token in the HTTP header. The token is in JWT format and should be sent with the Bearer prefix in the header.
API Method¶
Request¶
| Parameter | Description |
|---|---|
UserName | Username. |
Password | Password. |
Client | Information about the application making the request. |
Response¶
| Parameter | Description |
|---|---|
IsSuccessful | true if the operation is successful. |
Result | Result code. |
ReferenceId | Request reference Id. |
User | Information about the authenticated user. |
Token | JWT token to be used. |
Expires | Expiration time of the token. |
Validity | Last validity period for the next request. It will have the same value as Expires for application users. If a different value is returned, Auth/Check or Auth/Info should be called to extend validity. |
Sample Request¶
json
{
"Domain": "",
"UserName": "app",
"Password": "app",
"Client": {
"Version": "",
"Device": "",
"Platform": "",
"Resolution": "",
"Language": "",
"DateTime": ""
}
}
Sample Response¶
json
{
"IsSuccessful": true,
"ReferenceId": "a22d2cda-a328-491b-8afb-29a3fbd7f13f",
"User": {
"UserId": 216,
"UserName": "tokenApp",
"UserRole": "App",
"UserPartyType": "Person",
"DomainId": 216,
"DomainCode": "216",
"DomainName": "tokenApp",
"DomainType": "User",
"DomainRole": "App",
"Name": "tokenApp",
"FirstName": "tokenApp",
"LastName": null,
"Profile": {
"Locale": "TR",
"Image": null
}
},
"Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV...pFxy6pU8Fuo1SpWGMIJUshWQ",
"Expires": "2021-08-01T08:26:14.8981391Z",
"Validity": "2021-08-01T08:26:14.8981391Z"
}
Integration/Add — Sending Integration Data¶
Before the call starts, Integration Services can send call-specific integration data to EnQualify using the Integration/Add method.
API Method¶
Request¶
| Parameter | Is Mandatory? | Description |
|---|---|---|
Type | No | Type of integration data. Should be sent as null or "Session" for call information. |
Reference | Yes | Call reference Id used by Integration Services. Process, customer, or another identifier can be sent. |
CallType | Yes | Call type defined in the system. E.g.: "NewCustomer", "ProductActivation". |
Phone, Email | No | Phone and email information of the caller. |
FormUrl | No | Special form URL that the agent will open during the call. If not provided, the Integration API will be used. |
| Process1 | No | Should be used according to definitions created during dynamic decision management, process definition stage. Can remain null if not used. Can also be set to only “True” or “False”. |
| Process2 | No | Should be used according to definitions created during dynamic decision management, process definition stage. Can remain null if not used. Can also be set to only “True” or “False”. |
| Process3 | No | Should be used according to definitions created during dynamic decision management, process definition stage. Can remain null if not used. Can also be set to only “True” or “False”. |
| Process4 | No | Should be used according to definitions created during dynamic decision management, process definition stage. Can remain null if not used. Can also be set to only “True” or “False”. |
| Process5 | No | Should be used according to definitions created during dynamic decision management, process definition stage. Can remain null if not used. Can also be set to only “True” or “False”. |
IDRegistration | No | Identification registration data. If not provided, EnQualify will call the Integration API. |
AddressRegistration | No | Address data. If not provided, EnQualify will not call the Integration API. |
Data | No | Special data in JSON key-value format. Displayed on the call page. |
Response¶
| Parameter | Description |
|---|---|
IsSuccessful | true if the operation is successful. |
Result | Result code. |
ReferenceId | Request reference Id. |
Sample Request¶
json
{
"Type": "Session",
"Reference": "string",
"CallType": "NewCustomer",
"Phone": "string",
"Email": "string",
"FormUrl": "string",
"Process1":"string",
"Process2":"string",
"Process3":"string",
"Process4":"string",
"Process5":"string",
"IDRegistration": {
"SerialNo": "string", // Mandatory
"IdentityNo": "string", // Mandatory
"DocumentNo": "string", // Mandatory
"Name": "string", // Mandatory
"Surname": "string", // Mandatory
"Gender": "string", // Mandatory
"BirthDate": "string", // Mandatory
"Nationality": "string", // Mandatory
"ExpireDate": "string", // Mandatory
"IdentityType": "T.C. Kimlik Kartı",
"FatherName": "string",
"MotherName": "string",
"BirthPlace": "string",
"RegistrationPlace": "string",
"IssuedBy": "string",
"IssuedDate": "string"
},
"AddressRegistration": {
"AddressType": "string",
"District": "string",
"DistrictCode": 0,
"Street": "string",
"City": "string",
"CityCode": 0,
"Country": "string",
"CountryCode": 0
},
"Data": "{\"VideoKayıtOnayı\":\"Alındı\",\"KvkkOnayı\":\"Alındı\"}"
}
Integration/Get — Querying Integration Data¶
Integration Services can query the current status of the data sent with Integration/Add using the Integration/Get method. If the call has started, the SessionUId field will be populated in the response.
ℹ️ If the
Send Notificationfunction of Integration API is used, theIntegration/Getcall is not mandatory.
API Method¶
Request¶
| Parameter | Description |
|---|---|
Types | Expected value: empty array []. |
Reference | Reference Id sent in Integration/Add. |
IdentityType | Identity type of the caller. |
IdentityNo | Identity number of the caller. |
Statuses | Status of integration data: None, Waiting, Active, Completed, Failed. |
Response¶
| Parameter | Description |
|---|---|
IsSuccessful | true if the operation is successful. |
Result | Result code. |
ReferenceId | Request reference Id. |
Data | Found integration data. If a match is found, it will include SessionUId. |
Sample Request¶
json
{
"Types": [],
"Reference": "string",
"IdentityType": "string",
"IdentityNo": "string",
"Statuses": ["None", "Waiting", "Active", "Completed", "Failed"]
}
Sample Response¶
json
{
"IsSuccessful": true,
"ReferenceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"Data": [
{
"UId": "string",
"Type": "string",
"Reference": "string",
"SessionUId": "string"
}
]
}
Session/Get — Retrieving Call Data¶
Integration Services can retrieve all data related to a completed or ongoing call using the Session/Get method. The SessionUId value of the call is required for calling the method; this value can be obtained from the Integration/Get response or from the Integration API Integration/Send call.
API Method¶
Request¶
| Parameter | Description |
|---|---|
SessionUId | Call Id in EnQualify. |
LoadDetails | Set to true to obtain detailed data. |
LoadContent | Set to true to obtain document or visual contents. |
LoadLogs | Set to true to obtain CallLogs sent from mobile. |
Response¶
| Parameter | Description |
|---|---|
IsSuccessful | true if the operation is successful. |
Result | Result code. |
ReferenceId | Request reference Id. |
Data | Requested call data. |
Important fields within **Data**:
| Parameter | Description |
|---|---|
RoomId | Will be populated if a video call has started. If empty, the call has not started. |
StartDate | If populated, it means the video call has started. |
NFCExists | true if NFC support exists on the device. |
NFCVerified | true if NFC verification has been done. |
FaceUId | Will be populated if face comparison has been done. |
IDDocUId | Will be populated if OCR reading has been completed. |
IDChipUId | Will be populated if NFC reading has been completed. |
IDCheckUId | Will be populated if identity information has been obtained from KPS. |
Face.ValidityLevel | 0: Red warning, 1: Green check, 2: Yellow check. |
IDDoc.IsValid | true if the OCR result is valid; a green check is shown on screen. |
IDChip.IsValid | true if the NFC result is valid; a green check is shown on screen. |
Sample Request¶
json
{
"SessionUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"LoadDetails": true,
"LoadContent": true,
"LoadLogs": false
}
Sample Response (summary)¶
json
{
"IsSuccessful": true,
"ReferenceId": "f5d68cc4-7cab-41f6-8581-2fd8f15bb27c",
"Data": {
"UId": "9883c203-baa4-4e3c-940b-89f16a218160",
"Type": "NewCustomer",
"DateTime": "2023-09-25T13:51:07.23",
"RoomId": "AA54C8CB048D7DA96",
"IdentityNo": "22",
"Name": "Ozan",
"Surname": "Şn",
"Phone": "555 555 55 55",
"Email": "enqura@enqura.com",
"NFCExists": true,
"NFCVerified": true,
"Status": "Closed",
"StartDate": "2023-09-25T13:52:14.3066667",
"Face": {
"Distance": 0.59,
"Confidence": 45,
"LivenessScore": 0.98,
"ValidityLevel": 1
},
"IDDoc": {
"IsValid": true,
"IdentityNo": "22",
"Name": "OZAN",
"Surname": "SN",
"BirthDate": "900507",
"Nationality": "TUR"
},
"IDChip": {
"IsValid": true,
"PassiveAuthSucceeded": true
},
"SessionVideos": {
"AgentVideoFileName": "caecd7a84083491bb16e11e959e49ca4_A.webm",
"MobileVideoFileName": "caecd7a84083491bb16e11e959e49ca4_M.webm",
"ScreenVideoFileName": "caecd7a84083491bb16e11e959e49ca4_S.mp4"
}
}
}
CustomerQueueOrder/Get — Querying Queue Order¶
Used to query the customer's queue order for a reference.
Customer Queue Inquiry Process¶
After the customer sends a GG request, the Backend to Backend system retrieves the queue order information.
Access is provided via the reference conveyed when the session is started.
API Method¶
Sample Request¶
json
Sample Response¶
json
The
Datafield returns the customer's queue order as a number.
Verify/Report/MissedCall/List¶
Missed Call List¶
Used to fetch the list of missed calls.
Sample Request¶
{
"StartDate": "04.06.2023 00:00",
"EndDate": "04.06.2026 23:59:59"
"CallType": "NewCustomer" // If null is sent, data from all CallTypes will be returned
}
// Date Format: Day.Month.Year Hour (dd.MM.yyyy hh:mm:ss)
Sample Response¶
{
"IsSuccessful": true,
"ReferenceId": "9b203581-4dee-4de1-a719-db5ea796e2b8",
"Data": [
{
"Name": "Full Name",
"IdentityNo": "12345678900",
"Phone": null,
"DateTime": "2026-06-04T09:47:53.981636",
"CallType": "New Customer",
"WaitingTime": 121,
"SessionUId": "337ffdcf-982f-498d-abca-e039f9246c81"
},
{
"Name": "Full Name",
"IdentityNo": "12345678900",
"Phone": null,
"DateTime": "2026-06-04T09:50:03.007845",
"CallType": "New Customer",
"WaitingTime": 121,
"SessionUId": "c9dad605-de48-4598-81ee-4dd59ed215d6"
}
}
A token obtained with the App user is used.
Verify/Report/QueueCallCount¶
Provides the number of people waiting in the queue.
Sample Request¶
{
"StartDate": "04.06.2026 00:00",
"EndDate": "04.06.2026 23:59:59"
}
// Date must be provided. The range of that day can be provided as in the example.
// Date Format: Day.Month.Year Hour (dd.MM.yyyy hh:mm:ss)
Sample Response¶
{
"IsSuccessful": true,
"ReferenceId": "7272a8a8-1665-4cfb-a8ec-11fb1a0c6464",
"Count": 5
}
A token obtained with the App user is used.