Skip to content

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.

Text Only
authorization: Bearer xxxxx…

API Method

Text Only
POST https://[enqualifyapihost]/api/Auth/Token

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

Text Only
{
  "Domain": "",
  "UserName": "app",
  "Password": "app",
  "Client": {
    "Version": "",
    "Device": "",
    "Platform": "",
    "Resolution": "",
    "Language": "",
    "DateTime": ""
  }
}

Sample Response

json

Text Only
{
  "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

Text Only
POST https://[enqualifyapihost]/api/Verify/Integration/Add

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

Text Only
{
  "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 Notification function of Integration API is used, the Integration/Get call is not mandatory.

API Method

Text Only
POST https://[enqualifyapihost]/api/Verify/Integration/Get

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

Text Only
{
  "Types": [],
  "Reference": "string",
  "IdentityType": "string",
  "IdentityNo": "string",
  "Statuses": ["None", "Waiting", "Active", "Completed", "Failed"]
}

Sample Response

json

Text Only
{
  "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

Text Only
POST https://[enqualifyapihost]/api/Verify/Session/Get

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

Text Only
{
  "SessionUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "LoadDetails": true,
  "LoadContent": true,
  "LoadLogs": false
}

Sample Response (summary)

json

Text Only
{
  "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

Text Only
POST https://[enqualifyapihost]/api/Verify/CustomerQueueOrder/Get

Sample Request

json

Text Only
{
  "Reference": "356D66C0-CEB1-4B5E-9B19-8F92B061DF1D"
}

Sample Response

json

Text Only
{
  "IsSuccessful": true,
  "ReferenceId": "06114056-cbf6-46e6-8172-bc991984b359",
  "Data": 8
}

The Data field returns the customer's queue order as a number.

Verify/Report/MissedCall/List

Missed Call List

Used to fetch the list of missed calls.

Text Only
https//{ManagementApiURl}/api/Verify/Report/MissedCall/List

Sample Request

Text Only
{
  "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

Text Only
{
    "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.

Text Only
https//{ManagementApiURl}/api/Verify/Report/QueueCallCount

Sample Request

Text Only
{
  "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

Text Only
{
    "IsSuccessful": true,
    "ReferenceId": "7272a8a8-1665-4cfb-a8ec-11fb1a0c6464",
    "Count": 5
}

A token obtained with the App user is used.